To print the output of AWK to a dynamic file:
head 236_236_raw | awk -F';' '{ print $7,"\t",$6 > ("_"$2"_"$3".txt")}'
If the number of files open are large, you will get the following error:
To overcome the above problem, you can close the files like this:
head 236_236_raw | awk -F';' '{ print $7,"\t",$6 >> ("_"$2"_"$3".txt"); close("_"$2"_"$3".txt")}'
The important point to note is that now we changed the redirection operator to ">>" from ">". Makes sense ? :)
head 236_236_raw | awk -F';' '{ print $7,"\t",$6 > ("_"$2"_"$3".txt")}'
If the number of files open are large, you will get the following error:
awk: * makes too many open files
input record number 203, file
source line number 1
head 236_236_raw | awk -F';' '{ print $7,"\t",$6 >> ("_"$2"_"$3".txt"); close("_"$2"_"$3".txt")}'
The important point to note is that now we changed the redirection operator to ">>" from ">". Makes sense ? :)
No comments:
Post a Comment