crontabによるエコーカール標準出力

crontabによるエコーカール標準出力

これは私のGithubアカウントに保存したcrontabスキーマです。

source ~/.profile
0 0 * * *
# More cron commands

練習でstdoutデータをcurlcrontabにリンクしてみました(Githubパスを汎用モードに変更しました)。

1)簡単なパイプを使用しようとしています。

curl https://raw.githubusercontent.com/user/repo/master/cronjobs | crontab

次のエラーが原因でこの操作は失敗します。

"-":0: 悪い方

crontabファイルが正しくないため、インストールできません。

2)区切り記号を使ってみました。

curl https://raw.githubusercontent.com/user/repo/master/cronjobs | cat > crontab

次のエラーが原因でこの操作は失敗します。

修正はありません。

三)curl出力をcrontab

echo "curl $(https://raw.githubusercontent.com/user/repo/master/cronjobs)" | crontab

次のエラーが原因でこの操作は失敗します。

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0...: command not found
100   505  100   505    0     0    804      0 --:--:-- --:--:-- --:--:--   804
(23) Failed writing body

stdoutからcrontabにデータを送信する3つの異なる方法を試しましたが、何も機能していないことがわかります。ファイルの代わりにcrontabに直接渡すにはcron.dどうすればよいですか?

ベストアンサー1

"-":0: bad minute
errors in crontab file, can't install.

crontabこのエラーは、提供されたファイル/データが正しいcrontabファイルでない場合に発生します。 (そこにある数字に行番号があるようですが、なぜ時々ゼロが出るのかわかりません。)マニュアルページcrontab(5)説明する:

crontabのアクティブな行は、環境設定またはcronコマンドです。環境設定は次のとおりです。 name = value 等号(=)の周囲のスペースはオプションです。

cron コマンドの形式は V7 標準に似ており、多くのアップコンパチブル拡張があります。各行には5つの時間と日付フィールドがあり、その後にユーザー名(システムcrontabファイルの場合)、コマンドが続きます。

したがって、入力した内容は次のいずれかではない可能性があります。

いいね:

$ crontab <<EOF
SHELL=/bin/bash
* * * * * echo foo
EOF

これはない:

$ echo "foo" |crontab
"-":1: bad minute
errors in crontab file, can't install.

2)これはhere-docではなく、追加のcatを含むパイプとファイルへのリダイレクトですcrontab。名前付きコマンドは実行されませんcrontab

curl https://raw.githubusercontent.com/user/repo/master/cronjobs | cat > crontab

3) これにより、シェルでエラーが発生します。おそらくというコマンドはありませんhttps://raw.githubusercontent.com/user/repo/master/cronjobs

echo "curl $(https://raw.githubusercontent.com/user/repo/master/cronjobs)" | crontab

おすすめ記事