Я пишу обобщенный c сценарий командной оболочки для исполнителя generic_script. csh. В основном он содержит:
#!/usr/bin/csh -f
foreach x ("$argv")
$x
end
Использование: generic_script.csh "ls -l" "groups" "mkdir /tmp/abc"
Ожидаемый результат: выполнение команд в аргументах в последовательности.
Проблема: когда я анализирую $ argv в foreach l oop,
- если я использую
$argv
, аргументы разделяются пробелами:
ls
-l
groups
mkdir
/tmp/abc
если я использую
"$argv"
, $ x имеет
ls -l groups mkdir /tmp/abc
в качестве значения.
Как я могу разделить аргументы на основе "", то есть
ls -l
groups
mkdir /tmp/abc
Спасибо в заранее!