awk - вывод на печать между кавычками - PullRequest
1 голос
/ 05 апреля 2020

как я могу напечатать результат awk в двойных кавычках? как это:

du Screenshot*.png | awk '{print $2}' 

результат, который я получаю:

Screenshot_20200404_180903.png
Screenshot_20200404_181044.png
Screenshot_20200404_181057.png
Screenshot_20200404_181116.png

результат, который я хочу:

"Screenshot_20200404_180903.png"
"Screenshot_20200404_181044.png"
"Screenshot_20200404_181057.png"
"Screenshot_20200404_181116.png"

1 Ответ

1 голос
/ 05 апреля 2020

Да, попробуйте это:

ls Screenshot*.png | awk '{print "\""$2"\""}'

Объяснение:

AWK print выдает следующие аргументы: содержимое переменных (например, $foo, если у вас есть переменная с именем "foo", $2 для второго поля текущей записи ...) и литералы (т.е. строки и числа ...) и некоторые специальные символы, такие как кома (для вставки разделителя выходного поля.) Обратите внимание, что аргументы могут / должен иметь пробел между ними (для лучшей читаемости), но объединяется в выводе (следовательно, необходимо помещать разделители с запятой или пробелом).
Строки AWK заключаются в двойные кавычки и могут содержать экранированные символы с обратным символом sh , Это полезно для вывода табуляции (\t) и двойной кавычки (\") Отсюда и странная запись выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...