I want to apply the following "awk" command on files with extension "*.txt"
awk '$4 ~ /NM/{ sum += $2 } END{ print sum }'
But why this command doesn't work:
for i in *.txt do echo awk '$4 ~ /NM/{ sum += $2 } END{ print sum }' $i; done
Normally,
awk '$4 ~ /NM/{ sum += $2 } END{ print sum }' file1.txt
would work.
Once you've removed the echo it should work:
It'll fail if there are any text files with spaces in them, you could try this:
An alternative for printing out names:
(Basically make find execute awk directly, so and also print out the file names.