I'm programming in csh and I have a text file with hundreds of entries seperated only by spaces. I want to access three fields at a time (as each data set has three components) so that I can send these values to a different routine as three variables until every trio of values in the text file has been processed. The problem is I don't seem to have permission to use the 'read' or 'open' commands on my system (they aren't in my path or I can't copy them into my path because of permissions).
I tried creating an array: set temp = `cat file.txt` but then I can't figure out how to iterate through the array to get three values from it at once without "read" or "open" in a while loop...help? Once again, I'm pretty sure "read" and "open" aren't being recognized as commands.
When I try foreach line ($temp) it only references each individual entry and not a full line.
I just want to take the text file which is full of numbers and passing the values (three at a time) into variables that I will use as arguments to pass into a function within the loop. I just don't know how to iterate through the file three fields/numbers at a time to assign every three numbers to x, y, and z variables. I hope I am making sense...
function my_func {
echo x is $1
echo y is $2
echo z is $3
}
xargs -n3 < input_file | while read x y z; do
my_func $x $y $z
done
x is decimalnumber1
y is decimalnumber2
z is decimalnumber3
x is decimalnumber4
y is decimalnumber5
z is decimalnumber6
x is decimalnumber7
....