2012-01-22 4 views
0

Если я бегуGrep в Баш скрипт не работает, как ожидалось

grep -i "echo" * 

Я получаю результаты, я хочу, но если я пытаюсь следующий простой Баш скрипт

#search.sh 
grep -i "$1" * 
echo "####--DONE--####" 

и я запустить его с sh -x search.sh "echo" Я получаю следующий вывод ошибки:

' grep -i echo '* 
: No such file or directory 
' echo '####--DONE--#### 
####--DONE--#### 

Почему? Я на CentOS

+3

Как 'echo #### - DONE - ####' в конце выводит '#### - FINE - ####'? Я думаю, что вы здесь не показываете. –

+0

отредактирован, спасибо, что указали его. – pistacchio

+0

Если вы запустите 'bash -x ...' вместо' sh -x ... ', это сработает? – spatz

ответ

1

Добавить ша-паф линию в верхней части вашего сценария

#!/bin/bash 

и после того, как сделать его исполняемым, запустить скрипт, используя

./search.sh "echo" 
0

«ш -x "должен печатать файлы, которые '*' соответствует. Похоже, что это не соответствует файлам. Возможно, вы запустили его в директории без чтения файлов?

Смежные вопросы