Apa maksud perintah ini: awk -F: '{print $ 4}'?

30

Tolong jelaskan apa arti perintah berikut:

awk -F: '{print $4}'
Pelajar PHP
sumber

Jawaban:

55
awk -F: '{print $4}'
  • awk- ini adalah juru bahasa untuk Bahasa Pemrograman AWK. Bahasa AWK berguna untuk memanipulasi file data, pengambilan teks, dan pemrosesan
  • -F <value>- Memberitahu awkpemisah bidang apa yang digunakan. Dalam kasus Anda, -F:berarti separatornya adalah :(titik dua).
  • '{print $4}'berarti mencetak bidang keempat (bidang yang dipisahkan oleh :).

Contoh:

Katakanlah ada file bernama test, dan itu berisi yang berikut ini:

Hello:my:name:is:Alaa

Jika kita menjalankan perintah awk -F: '{print $4}' test, hasilnya adalah:

is

Karena isadalah bidang keempat.

      field1 field3 field5
       ----- ---- ----
       | | | | | |
       Halo: nama saya: adalah: Alaa
             || ||
             - -
           bidang2 bidang4

Alaa Ali
sumber
9
  • Anda mengatur pemisah bidang dengan ...

    -F
    

    jadi itulah ":" dalam contoh ini.

  • Anda mencetak teks yang berada di antara pemisah ke-3 dan ke-4 dengan ...

    '{print $4}'
    
  • Dan ini menjelaskannya dengan lebih baik:

    echo "154:266:377:454:533" | awk -F: '{print $4}'
    454
    
Rinzwind
sumber
bagaimana jika saya ingin mencetak 454 154:266:377:454:533cetak $ 4 dan seluruh baris dipisahkan oleh ruang?
Yogesh Darji