web-dev-qa-db-ja.com

CRONジョブを使用してcurlコマンドを実行する

このステートメントを実行したい:

curl 'http://localhost:8983/solr/dataimport?command=full-import'

cRONジョブを使用して10分ごと。

どうすればこれを達成できますか?

8
Archit Arora

何かのようなもの:

crontab <<'EOF'
Shell=/bin/bash
#min hr md mo wkday command
*/10 *  *  *  *     curl 'http://localhost:8983/solr/dataimport?command=full-import'
EOF

後でcrontab -lを使用して確認してください。 [〜#〜] but [〜#〜]、そのcurlコマンドにオプションを追加して、出力を特定の場所に配置します。書き込みアクセス権があります。また、curlが異常な場合は、/usr/bin/curlのようにフルパスを指定するか、crontab PATH変数を設定する必要があります。

EOFを囲む引用符は、HEREISドキュメントの内容(<<EOFEOF). HEREIS documents are a Shell feature, not part ofcrontab`の間のすべて)の置換を防ぎます。

Crontabファイルの内容の詳細については、man 5 crontabを参照してください。

私は通常、特別な最初の行で編集する~/.crontabファイルを保持し、実行ビットを設定します。

#!/usr/bin/env crontab 
Shell+/bin/sh
[... etc.]

これにより、~/.crontabを編集して、次のコマンドで実行できます。

$ vi ~/.crontab
$ ~/.crontab

(私は通常〜/ .crontab.bigboxのように、それらがどのホストであるかを示すためにそれらに拡張を持っています)

9
Alex North-Keys

Cpanelを使用する場合:
Cpanel-> Cron Jobs-> Put Time Interval(*/10 * * * *)
テキストボックスにコマンドを追加します:
curl -s "http://localhost:8983/solr/dataimport?command=full-import"
where -sは無音を意味します(出力なし)
あなたは終わりました

5
Hassan Kazem

BlueHostおよびGodaddyサーバーの場合:

curl -s "http://localhost:8983/solr/dataimport?command=full-import"
0
kalai