Я создал простой скрипт BASH, который каждый час проверяет наличие файла на удаленном сервере. Он работал безошибочно, пока меня не попросили переместить его на сервер, на котором запущен KSH.От bash до ksh - скрипт вызывает ошибки, но все еще работает
Часть кода, ошибки отказа это одна:
[email protected]$SERVER:$srcdir/$EVENTFILE
result=`sftp -b "$connect_string" 2>&1`
if [ echo "$result" | grep "not found" ]; then
echo "not found"
else
echo "found"
fi
Эти ошибки он бросает:
-ksh: .[51]: [: ']' missing
grep: ]: No such file or directory
found
Он по-прежнему работает, хотя и подтверждает, что файл Я опроса для есть, но мне нужно это исправить. Я изменил, если заявление, как так
if [[ echo "$result" | grep "not found" ]]; then
, но он не сразу с этой ошибкой
-ksh: .: syntax error: `"$result"' unexpected
Что мне не хватает?
'если 'проверяет код возврата последней команды, выполненной для предоставленного списка. поэтому 'if echo" $ result "| grep «не найден»; то «должно быть достаточно. Удачи. – shellter