[awk] Как вычленить закавыченную подстроку, содержащую пробел, из строки?

Źmicier 321942 на gmail.com
Пт Окт 29 20:20:18 BST 2010


Есть строка, которая содержит имена файлов, разделенные пробелами.
Если имя файла содержит пробелы — оно закавычено. Т.е. как-то так:
"file 1" file2 file3 "file 4" file5

Нужно вычленить имя файла по номеру в строке. Если ее передать
башевскому скрипту параметром — все прекрасно:

$ cat quot.sh
#!/bin/bash
echo $1

$ ./quot.sh "file 1" file2 file3 "file 4" file5
file 1

А вот сделать это же без создания отдельного скрипта не получается:

$ echo "file 1" file2 file3 "file 4" file5 | awk '{print $1}'
file

$ echo '"file 1" file2 file3 "file 4" file5' | awk '{print $1}'
"file

$ echo "file 1" file2 file3 "file 4" file5 | (read a b c d e; echo $a)
file

Интуиция подсказывает мне, что есть простое решение, а я о нем просто
не знаю. Подскажите, пожалуйста.


Подробная информация о списке рассылки ubuntu-ru