Ben hatları çıkarmak için AWK nasıl kullanabilirim anlamaya çalışıyorum . Örneğin, girdi dosyasının:
30
20
Çıktı:
10
Şimdi, bir test olarak "Kullanılmış" bellek sütununu hesaplamak çalışıyorum:
$ cat /proc/meminfo
Şu anda bunu yazdım:
$ grep -P 'MemTotal|MemFree' /proc/meminfo | \
-- Here comes the calculation using AWK
Aşağıdakileri denedim:
$ grep -P 'MemTotal|MemFree' /proc/meminfo | \
awk '{print $2}' | awk '{$0-s}{s=$0} END {print s}'
Ama bu bana son veri satırını veriyor.
Çalışan bir çözüm buldum, ancak bunun en uygun çözüm olduğundan şüpheliyim. Tüm kodlama deneyimim, satırların miktarını zor kodlamanın korkunç olduğunu söylüyor: P
$ grep -P 'MemTotal|MemFree' /proc/meminfo | \
awk '{print $2}' | awk 'NR == 1{s=$0} NR == 2 {s=s-$0} END {print s}'
line1_$2 - line2_$2 - lineN-$2mı? Sadece art arda ilk iki satırı çıkarmak istiyor musunuz?