LINUX.ORG.RU

[shell][bash]Разбор строки

 ,


0

0

Есть строка, получаю ее из файла.
Нпример,
a «b c»
Нужно передать ее в качестве аргументов другому скрипту.
Реально выходит что здесь 3 аргумента
a
«b


Придется вручную разбирать кавычки?


Ответ на: комментарий от Kakerlak

Хм, а если мне надо не

a
b
c
а надо
a
b c
то бишь чтоб шелл интерпретировал строку как если бы она была аргументом, а он при подстановке переменной экранирует кавычки

muu
() автор топика

попробуйте нечто вроде:
for arg in '«$@»'
do
....
done

AITap ★★★★★
()
Ответ на: комментарий от gavv

спс, работает

не могу понять только логики, почему
eval 'command $Args' - не работает

ну ладно, меня устраивает
eval 'command ' $Args

muu
() автор топика
Ответ на: комментарий от muu

>eval 'command $Args'
вероятно, потому что одинарные кавычки. в мане все есть

gavv
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.