Mój przykład plik tabela wygląda takawk oświadczenia - jeśli nie znaleziono (grep'ed) zrobić
Name1 xxxxx 34
Name1 xxxxx 37
Name2 aaaaa 59
Name2 xxxxx 90
Name4 Name3 12
nazwa pliku wygląda tak
Name1
Name2
Name3
Name4
Chcę awk
dopasować Name1/2/3/4
z pliku Nazwa złożyć plik $ 1 i wydrukować sumę 3 $. Jeśli Nazwa nie zostanie znaleziona, wydrukuj0
- jak mogę zrobić takie oświadczenie if
w awk
?
Co ja już zrobione:
for i in $(cat Name_file)
do
cat table | awk -v NAME="$i" '($1==NAME) {SUM+=$3} END {print NAME"\t"SUM}'
done
daje argumenty wyjściowe
Name1 71
Name2 149
Name3
Name4 12
To prawie idealny - Chcę dodać 0
do Name3
dostać takiego pliku
Name1 71
Name2 149
Name3 0
Name4 12
Tyle pytanie to: Jak dodać funkcję awk?
mogę zasugerować użycie '$ (
TrueY
Masz na myśli 'dla i in $ (
Tak, użyj '$ (
TrueY