Я хочу передать команду сценарию оболочки. Эта команда является командой grep. При выполнении я получаю следующие ошибки, пожалуйста, помогите:Команда передана как аргумент для сценария оболочки
myscript.sh "egrep 'ERROR|FATAL' \*20100428\*.log | grep -v aString"
myscript.sh простой скрипт:
#!/bin/ksh
cd log
$1
ошибки являются:
egrep: can't open |
egrep: can't open grep
egrep: can't open -v
egrep: can't open aString
Ошибка происходит потому, что видит egrap |, grep, -v и aString в качестве аргументов.
Большое спасибо. Это помогло мне. –
Более корректной версией будет 'eval '$ 1" ', которая берет на себя несколько символов пробела и предотвращает переполнение файлов. –