Используя этот вопрос, я попытался сопоставить целые слова с awk.

В моем homerdir есть файл с именем .bashrc , но когда я пытаюсь использовать:

ls -la | awk '$9 ~ /\<.bashrc\>/'

Это ничего не показывает.

Также попробовал:

ls -la | awk '{if($9 ~ "^.bashrc" && $9 ~ "$.bashrc") echo $0}'

Все еще не работает.

Что я делаю неправильно?

1 ответ1

1

~ используется для сравнения строк, но не для точного соответствия.

Вы можете использовать == . Ваша команда должна быть:

ls -la | awk '$9 == ".bashrc"'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .