Test argument error, unable to solve


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Test argument error, unable to solve
# 15  
Old 08-24-2010
Try to run the below command at command prompt and let us know output. Its running fine at my end

Code:
[root@TEST ~]# awk  -F"," '{for (i=2;i<=NF ; ++i) { if($i !~ /N\/A/) {sum[i] += $i;}} if (i > max) max=i }
    END { s=""; for (i=2; i<=max; ++i) { printf "%s%s", s, sum[i]; s=",";} printf "\n" }' format.csv
183,234,29,31,0,0,0,0,25,127,6,21,285,49,0,0,0,0,217,2,27,0,968,332,0,0,

[root@TEST ~]# cat format.csv
20100803,N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, ,
20100804, 183,  234,  29,  31,  0,  0,  0,  0,  25,  127,  6,  21,  285,  49,  0,  0,  0,  0,  217,  2,  27,  0,  968,  332,
20100802,N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, ,
20100803,N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, ,

# 16  
Old 08-24-2010
Yep, its working good on the console. The logic works in the script too and the output is alright, but i'm unable to avoid this error. Smilie
# 17  
Old 08-24-2010
Interestingly we can get the same ksh error message by feeding an entire sample record to an if statement as if we had presented it in a text variable which was not surrounded by quotes.
What surprised me is that ksh continues running.

Code:
#!/bin/ksh
if [ 20100802,N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, N/A, , ]
then
   echo true
else
   echo false
fi


./testscript[2]: N/A,: unknown test operator
false


If you run your script with "set -x" please show us say 50 lines of trace up to the shell error message. It should demonstrate which command is going wrong and with what values.
# 18  
Old 08-26-2010
interesting observation there methyl, i'll re-check my if statements...

here's the console o/p

Code:
+ reader_function 06 2010 # function that reads i/p file
+ [ 25 -ne 0 ]
+ writer_reader #function that calculates sum and write o/p file
finale[89]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
+ [ 1 -lt 2 ]
+ client=name
+ + expr 1 + 1
p=2
+ fullname=nameadm
+ echo  the Name of the Client chosen is name 
+ 1>> /fs/home-1/u1/sprav/reports/log.txt
+ reader_function 06 2010
+ [ 24 -ne 0 ]
+ writer_reader
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
finale[71]: N/A,: unknown test operator
+ [ 2 -lt 2 ]
+ rm cfile
+ rm /fs/home-1/u1/sprav/tempo/days
+ rm /fs/home-1/u1/sprav/tempo/day
+ rm header
+ rm headf
+ rm headv
+ rm tailf
+ exit


Last edited by pravsripad; 08-26-2010 at 02:54 AM.. Reason: spelling typo
# 19  
Old 08-26-2010
The problem is clearly in a script called "finale" but the "set -x" does not appear to be active in that script.
# 20  
Old 08-27-2010
Can you tell me a workaround to not display this error on the console?

Redirecting stderr for this particular part of the script only?

Code:
2>

is for the entire script...
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script that check the argument passed to it and prints error if test condition is not met

I want to make a script that check for the argument passed to it and generates an error in case any character/string argument passed to it. I am using below code, but its not working. can anyone help. #!/bin/bash if ]; then echo 'An integer argument is passed to the script hence... (3 Replies)
Discussion started by: mukulverma2408
3 Replies

2. UNIX for Dummies Questions & Answers

Test: argument expected error in shell script

Hi, I am trying to write a small script that validates if there exist files that start with a pattern in a given directory. Below is the piece of my script: #!/usr/bin/ksh BTFDIR=/opt/ships/temp if then echo 'found' else echo 'not found' fi When I run this... (2 Replies)
Discussion started by: snvniranjanrao
2 Replies

3. Shell Programming and Scripting

Error- test: argument expected

check_build_info_table() { if then export build_info_table=`sqlplus -s sna/dbmanager <<! set pagesize 0 heading off feedback off SELECT DISTINCT TABLE_NAME FROM ALL_TABLES WHERE OWNER = 'XYZ' AND TABLE_NAME = 'MY_TABLE'; exit !` ... (3 Replies)
Discussion started by: ambarginni
3 Replies

4. UNIX for Advanced & Expert Users

Error:--test: argument expected--Even though i give an argument.

Hi All, I am running the script VBoxManage list vms |sed 's/"//g' | cut -d " " -f1 > har1out.mytxt result=`cat har1out.mytxt | grep $1' echo $result echo $1 { if then echo pass else echo fail fi (2 Replies)
Discussion started by: harsha85
2 Replies

5. Shell Programming and Scripting

error : test: argument expected

Hello all, I am trying to figure out why i am getting an error while executing the script...altought it seems like its work...but still get the test arguement error...any help would be appericiate...this script basically connects to any oracle db ( just have to pass db name to it)... (4 Replies)
Discussion started by: abdul.irfan2
4 Replies

6. Shell Programming and Scripting

test: argument

Hi, I having trouble with a test numeric value. Here is my code : nb_wanted=$(cat ${type_proto} | grep "#nbr_#branche#" | grep $branche | awk '{print $3}') if ; then nb_ready=$(cat ${fic_tmp_listeSTAF} | wc -l) ... (2 Replies)
Discussion started by: Aswex
2 Replies

7. Shell Programming and Scripting

test: argument expected

# to search a file if it exists and whether its readable or not # if yes print its first 5 lines echo enter the filename to be searched read fname if #-d $fname then echo file doesn exists elif then echo its a directory elif then cat $fname else echo its not readable fi # end of... (9 Replies)
Discussion started by: gotam
9 Replies

8. UNIX for Dummies Questions & Answers

"test: argument expected" error

Hi, No need to say I'm new to unix shell scripting. I have a very simple script that goes this way: for datos in `ls -rt $UNXLOG/26-Jan*` do export arch=`echo $datos |cut -d, -f1` if then export linea1=`grep Debut ${arch}` export horatot=`echo $linea1 |cut -d' ' -f5` ... (7 Replies)
Discussion started by: mvalonso
7 Replies

9. Shell Programming and Scripting

ERROR-> test: argument expected , what does it mean?

I am trying to compare two integer variables in the if statement, but i am getting this "test:argument expected". What am i missing? Why is the if loop not executing correctly? trunkPCM="100000"; more $FILE |while read line do PCM=`echo $line | awk '{ print $2 }'` ... (4 Replies)
Discussion started by: tan102938
4 Replies

10. Shell Programming and Scripting

Facing test: argument expected ERROR

Hi All, When i run the below code : v_shortfield = "" if ; then echo "ravi" else echo "kumar" fi i am getting output as : sam.ksh: test: argument expected kumar Why i am getting error test:argument expected and why i am not getting output as "ravi" :confused: (5 Replies)
Discussion started by: rkrgarlapati
5 Replies
Login or Register to Ask a Question