Re: [awk] Как вычленить закавыченную подстроку, содержащую пробел, из строки?
Źmicier
321942 на gmail.com
Пт Окт 29 21:53:55 BST 2010
Да, это понятно, извините, выразил удивление раньше, чем подумал. Что
«awk» с точки зрения шелла — это $0, тоже ясно.
Однако от работы с аргументами комстроки хотелось бы избавиться вовсе,
поскольку исходные строки (их много) записаны в файле.
А поля в записи awk делит, игнорируя кавычки.
Поскольку командную строку на параметры делит, афайк, шелл, мне
подумалось, что у него существует встроенная команда, которая
позволяет это делать с любой строкой. В баше есть команда read. Хотел
почитать ман по ней, но не получилось — man read рассказывает о чем-то
другом.
30 октября 2010 г. 0:22 пользователь Alexey Smirnov <alsmirn на gmail.com> написал:
> 30 октября 2010 г. 0:09 пользователь Źmicier <321942 на gmail.com> написал:
>> Что это? O_O Почему оно именно в этом порядке и откуда там пункт «awk»?
>
> В таком порядке, потому, что ARGV есть массив значений, с которым
> можно работать по-разному.
> Можно и так:
> #!/usr/bin/awk -f
> BEGIN{
> i = 0;
> while (i < ARGC) {print ARGV[i]; i++;}
> }
> alexey на darkstar:~$ ./test.awk "file 1" file2 file3 "file 4" file5
> awk
> file 1
> file2
> file3
> file 4
> file5
>
> А awk там потому, что это тоже параметр командной строки; вы
> когда-нибудь параметры командной строки на каком-нибудь языке
> разбирали?
>
> --
> Alexey Smirnov
>
> alsmirn.moikrug.ru [ru]
> linkedin.com/in/alsmirn [en]
> --
> ubuntu-ru mailing list
> ubuntu-ru на lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
>
Подробная информация о списке рассылки ubuntu-ru