... ... ...
The code above is just an example and returns:
I am having trouble following the logic of your script.
The diagnostic you are getting is because the sequence x(i) is a request to call the function named x with the parameter i, you haven't defined any functions, and the function x is not one that is defined by gawk. Furthermore, you can't have a variable and a function with the same name.
Note that the statement: x==0; is a logical expression (not an assignment statement) returning the value 1 if the variable x is zero or an empty string; otherwise it returns 0. (Note that the value of that logical expression doesn't affect the behavior of this script in any way; it does not assign a value to x.)
Although the gawk statement:
splits the 2nd input field into the array b[] with each element of b[] being set to one character from that field and sets a to the number of characters found; using an empty string as an ERE specifying the field delimiter is not available in all versions of awk (including the one I am using on OS X).
You might want to try something more like:
which, if file contains:
produces the output:
This was tested using awk on OS X, but should also work with gawk on any Linux system.
If someone wants to try this script on a Solaris/SunOS system, change awk to /usr/xpg4/bin/awk or nawk.
This User Gave Thanks to Don Cragun For This Post:
I have no idea why I can't get this to work, if anybody can help i would appreciate it.
#!/bin/bash
x=`cat counter.txt | wc -l`
y= '$x / 7'
printf "%d People have visited this page" $y
:confused: (2 Replies)
I am using egrep to extract numbers from a file and storing them as variables in a script. But I am not able to do any arithmetic operations on the variables using "expr" because it stores them as char and not integers. Here is my code and the error I get. Any help will be appreciated.
#!/bin/sh... (3 Replies)
Hi, All,
I have a file, its content is as follows:
100 150
120 135
140 170
I want to insert a column, its content is determined by the difference between the two values in the same line, if the difference is less than 20, the new value is 1, otherwise is 0.
after the operation, the... (1 Reply)
Hi all,
I would appreciate if anyone knows how to perform adding to date.
As for normal date, i can easily plus with any number.
But when it comes to month end say for example 28 Jun, i need to perform a plus with number 3, it will not return 1 Jul.
Thanks in advance for your help. (4 Replies)
Hi
I have a file with 3 columns. say,
infile:
1 50 68
34 3 23
23 4 56
-------
-------
I want to generate n files from this file using a loop so that 1st column in output file is (column1 of infile/(2*n+2.561))
I am doing like this:
for ((i=1; i<=3; i++))
do
a=`echo... (3 Replies)
I am writing a script in zsh shell, it fetchs a number from a file using the awk command, store it as a variable, which in my case is a small number 0.62000. I want to change this number by multiplying it by 1000 to become 620.0 using the command in the script
var2=$((var1*1000))
trouble is... (2 Replies)
Hi,
Here is the script i try to perform arithmetic operation in two variables .
git branch -r | while read brname ; do
REV_COMMITS=`git rev-list --count $brname`
echo "$brname has $REV_COMMITS"
(( TOTAL = TOTAL + REV_COMMITS ))
echo "in loop" $TOTAL
done
echo "total is " $TOTAL
... (3 Replies)
I have to do some arithmetic operation on Field 8 which is calculated by Field 9/Field 7
Suppose i have data like :
0800123456|JAN|2017|JAN|2018|0800123456|0|0.0000|0.00|
0800234567|JAN|2017|JAN|2018|0800234567|4|2.5812|10.32|
0800666666|JAN|2017|JAN|2018|0800666666|2|1.7255|3.45|... (0 Replies)