2016-11-09 4 views
0

Я новичок в Linux, у меня есть сервер Linux с скриптомКак запланировать сценарий .sh на сервере linux?

ftp.sh 

который передавать файлы на сервере окон.

я попытался запланировать его 06:15 каждый день с помощью команды кронтаба в замазке/WinSCP

15 06 * * * sh ftp.sh 

и получить эту Msg ERRor

command not found 

также попытался запланировать его из окна партии файл с

start folderName\putty.exe -ssh [email protected]*.*.* 22 -pw "password" 

удался с использованием имени пользователя, но не смог выполнить навигацию до

/opt/dan/scripts 

или выполнить

sh ftp.sh 

в нем команду. что я делаю неправильно? есть другой способ, о котором я не думал?

+0

Поместите полный путь к сценарию ftp.sh на запись cron. –

+0

Этот вопрос может быть более подходящим для serverfault. – Matthias

+0

@AlbertoRe Что вы имеете в виду на входе в cron? –

ответ

0

sh не может выполнить ftp.sh, поскольку ftp.sh не поддерживается в переменной среды PATH. Если вы напишете полный путь к ftp.sh, вы можете добиться успеха.

15 06 * * * ш /the/path/to/ftp.sh

Или в зависимости от вашей установки

15 06 * * */путь/к/ш// путь/к /ftp.sh

Или

15 06 * * * /the/path/to/ftp.sh

+0

также команда не найдена –

0

Ваша ОС, кажется, не замечает 'ш' в качестве команды, как указано здесь :

command not found 

Это обычно означает, что он не установлен на конкретном вкусе Linux, который вы используете. Вы должны использовать другой интерпретатор файлов, или если вы уверены, что «sh» установлен, вы должны использовать абсолютный путь к этой программе в команде cron.

Если вы наберете следующее к терминальной сессии, он должен вызвать полный путь:

whereis sh 

Или в качестве альтернативы:

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