Assuming that the string passed in as the first positional parameter forms a valid arithmetic or logical expression, the float_test shell function returns exit status 0 if the expression evaluates to a non-zero value and returns exit status 1 if the expression evaluates to zero.
It could be written without the echo (and without redirection) if it used a BEGIN clause instead of an END clause:
If you're using a 1993 or later version of the Korn shell as your shell, you could evaluate similar expressions just using shell built-ins:
But note that awk performs floating point arithmetic by default while ksh performs integer arithmetic by default. So, where float_test "1/3" using awk gives exit code 0 because 1/3 evaluates to 0.3333...; but when using ksh93 gives exit code 1 because 1/3 evaluates to 0. To reverse the behaviors, int(1/3) evaluates to 0 and exits with code 1 with awk and 1./3 evaluates to 0.3333... and exits with code 0 with ksh93.
This User Gave Thanks to Don Cragun For This Post:
Hi Guys,
I was recently come across some code to hopefully learn a little bit about putting Shell commands into PHP application to run on a Linux server. However, I don't understand the command AT ALL... and was wondering if anyone can interpret it:
cat userIDs.dat | awk '{s=s+1; if... (1 Reply)
hi
i was moving a file from one directory to another with the following cmmand
mv /home/hsghh/dfd/parent/file.txt .
while doing so i i accidently
mv /home/hsghh/dfd/dfd .
although i gave ctrl c and terminate the move command some of the file are missing in the parent directory and... (1 Reply)
i am analyzing a query written by another developer ,need to understand part of script
am looking at a code ..and it converts comma files to pipe delimited and also takes away quotes from any columns,
source field format: 2510,"Debbie",NewYork
changes to
target: 2510|Debbie|NewYork
... (1 Reply)
Hi
I have a questions related 2 commands : 'du' and 'ls'.
Why is the difference between output of 'du' and 'ls' cmd's ?
Command 'du' :
------------------
jakubn@server1 /home/jakubn $ du -s *
4 engine.ksh
1331 scripts
'du -s *' ---> shows block count size on disk (512 Bytes... (5 Replies)
Hey all,
So I have an AWK command here
awk '{if(FNR==NR) {arr++;next} if($0 in arr) { arr--; if (arr == 0) delete arr;next}{print $0 >"list2output.csv"}} END {for(i in arr){print i >"list1output.csv"}}' list1 list2
(refer to image for a more readable format)
This code was submitted... (1 Reply)
Hi Friends,
I need a small help in understanding the below sed command.
$ cat t4.txt
1 root 1 58 0 888K 368K sleep 4:06 0.00% init
1 root 1 58 0 888K 368K sleep 4:06 0.00% init last
$ sed 's/*$//' t4.txt
1 root 1 58 0 888K ... (3 Replies)
Hi,
Could somebody help me in understanding the following awk expression:
awk -v n="POINT" '/%/{print $0 "\n" n ;next}1' < file name
Thanks,
Arun (6 Replies)
Hi Experts,
I was looking at the below link, for finding words next to it, And unable to understand this syntax:
Can any one please explain , what is meaning of this code:
if ( F )
s = s ? s OFS $i : $i
from:... (4 Replies)
I found this on an awk site and would like to know what it does:
/CARS/{x="";next} {if(x)print x;x=$0} END{if(x)print x}'
Does it mean if it finds the word cars it skips that line and then prints the next one? (4 Replies)
Heyas
Recently i wanted to help someone with an awk script, but the end-script didnt work as expected.
He wanted, if HOME was empty, to get the HOME of the current USER from /etc/passwd.
At first i tried hardcoded with root:
awk -F: '/^root/ {print $6}' /etc/passwd
As that worked, i've... (4 Replies)