Що означає ця команда: awk -F: '{print $ 4}'?


Відповіді:


55
awk -F: '{print $4}'
  • awk- це перекладач мови програмування AWK. Мова AWK корисна для обробки файлів даних, пошуку та обробки тексту
  • -F <value>- повідомляє, awkякий роздільник поля використовувати. У вашому випадку -F:означає, що роздільник є :(двокрапка).
  • '{print $4}'означає надрукувати четверте поле (поля розділені між собою :).

Приклад:

Скажімо, що файл називається test, і він містить наступне:

Hello:my:name:is:Alaa

Якщо ми виконаємо команду awk -F: '{print $4}' test, вихід буде:

is

Тому що isце четверте поле.

      поле1 поле3 поле5
       ----- ---- ----
       | | | | | |
       Привіт: мій: ім'я: є: Алаа
             || ||
             - -
           поле2 поле4


9
  • Ви встановлюєте роздільник поля за допомогою ...

    -F
    

    так що в цьому прикладі є ":".

  • Ви друкуєте текст, що знаходиться між 3-м та 4-м роздільником за допомогою ...

    '{print $4}'
    
  • І це пояснює це краще:

    echo "154:266:377:454:533" | awk -F: '{print $4}'
    454
    

Що робити, якщо я хочу надрукувати 454 154:266:377:454:533друк $ 4 і весь рядок разом, розділені пробілом?
Йогеш Дарджі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.