私はそれをcronジョブとして実行します。
( export PATH='/usr/bin:/bin' && echo "$PATH" && wget "https://www.mahmansystems.com.au/WSDataFeed.asmx/DownLoad?CustomerCode=%2F&WithHeading=true&WithLongDescription=true&DataType=0" -O mahman_direct.zip ) && echo 'I reached the end' &>> /home/myparadise/public_html/wp-content/uploads/import/files/output.txt
cron ユーザーとして CLI を実行すると正常に動作します。
これまで、cronジョブが自動的に失敗する理由は2つしかありませんでした。これは、CLIとcronでコマンドを実行したときのユーザーとパスの違いによるものでしたが、今回もそうではありません。 cronユーザーとして実行してCLIでcmdをテストしましたが、権限エラーは観察されませんでした。
wgetはファイル検索プロセスを説明するいくつかのテキストを出力/表示しますが、ユーザーのやり取りや入力/応答は必要ありません。
出力.txtにエラーは発生しません。
また何が間違っている可能性がありますか?
curl -sLo
万が一に備えて代案も試してみました。違いなし。
答え1
答え2
予期しないシーンなどの特殊文字が発生するのを防ぐために、私が個人的にアドバイスするのは、スクリプトに非常にマイナー%
な操作以外に何も入れないでください。cron
(私の考えでは、それへの単一の呼び出しがwget
合理的にマイナーなものに分類できると思います。うーん。)それからスクリプトを呼び出しますcron
。
はい/usr/local/etc/mahmansystems
(覚えておいてくださいchmod +x
):
#!/bin/sh
wget 'https://...' &&
echo 'I reached the end'
次に、システムレベルのエントリの例を次に示しますcron
。
0 * * * * www-data /usr/local/etc/mahmansystems >>& /home/myparadise/public_html/wp-content/uploads/import/files/output.txt
URLを複数回呼び出す場合は、使用するURLを識別する(簡単な)パラメータを指定して同じスクリプトに配置することもmahmansystems
できますcase
。esac