
cmdで正常に実行できるSSHスクリプト(テスト目的)があります。
#!/bin/bash
/usr/bin/sshpass -p 'password' /usr/bin/sftp user@host:/out/test/ <<< $'put -r /data/test/*'
Aは./script.sh
完全に実行され、すべてのファイルをリモコンにアップロードします。
しかし、script.shからscript.shを呼び出すと、crontab
何も起こりません。なぜ?
答え1
次のように動作させることができます。
/usr/bin/lftp sftp://user:pass@host -e "set sftp:auto-confirm yes;
set net:timeout 10; set net:max-retries 3; mirror -R --max-errors=1 --verbose=1
/local/test /remote/test; quit;"
これにより、内部のすべてのファイルが/local/test/
リモートsftpフォルダに同期されます。