クローンジョブは保存されませんでした。

クローンジョブは保存されませんでした。

非常に基本的なcronジョブを作成しようとしていますが、保存されていないようです。私がしたことは次のとおりです。

1)crontab -e

これにより、vimを使用してファイルが開きます。

2)

#!usr/bin/env python

0 23 * * 0 ~/Desktop/SquashScraper/helpfulFunctions.py

三):wq

4) クローンタップ-l

何も表示されず、次のメッセージが表示されます。

crontab: no crontab for ben 

周りを見回すと、同様の問題を持つほとんどの人が編集の問題を経験しています。私のcrontabはvimで正しく開くので、これは問題ではないようです。

なぜこれが正しく機能/保存されないのかを知っていますか?

ありがとう、クライマン

以下を含めるように編集されました。 ここに画像の説明を入力してください。

答え1

エラーメッセージが示すように、何らかの理由で/usr/bin/viコンピュータで正常に動作しません。

crontab: "/usr/bin/vi" exited with status 1

そこで何が起こっているのか、出るとviエラーコードが生成されるということです。終了時にエラーコードがcrontab表示されると、編集中のファイルの内容はvi信頼されず、vicrontabは変更されません。

うまくいかない理由をさらに詳しく調べたりvi、必要に応じてまったく異なるエディタを使用したりできます。たとえば、を使用する場合は、vim次のように入力できます。

EDITOR=/usr/bin/vim crontab -e

あるいは、ホームディレクトリにcrontabの「公式」バージョンを保存することもできます。次に、ホームディレクトリでバージョンを編集し、最後に次のコマンドを使用してインストールします。

crontab filename

答え2

システムによっては、ユーザーcrontabがに保存されます/var/spool/cron/。このディレクトリがあることを確認してください。また、crontabプログラムはsetuidになっており、他の人のcrontabを読むことができませんので、これを確認してください(-rwS...):

$ ls -l /bin/crontab
-rwsr-xr-x 1 root root 57536 Sep 18  2014 /bin/crontab

あなたのvimがエラーコードで終了するようです。エントリを「myfile」ファイルに入れて、それを使ってインストールしてcrontab myfileみてください。より意味のあるエラーメッセージが表示されることがあります。

また、crontabを実行するにはファイルが/etc/cron.deny存在する必要があります(通常は空です)。それ以外の場合は、エラーメッセージが表示されます。

あなたの#! @G-Manがコメントで述べたように、その行は機能しません。あなたは次のようなものが必要です

0 23 * * 0 python ~/Desktop/SquashScraper/helpfulFunctions.py

答え3

ここでは元の質問に答えません。しかし、ジョブをスケジュールするにはMac OS 10.9+そしてcron君がこんなことをしたのは間違ってるcrontab廃止予定です。あなたlaunchctllaunchdマニュアルページはこちら)逆。

launchd/は、/がファイルで使用される方法と同様に、各操作を説明するファイルlaunchctlと共に使用されます。最初は不安かもしれませんが、シングル。.plistsystemdsystemctl.servicecroncrontab -e

幸いなことに、ジョブ管理を容易にするためのGUIソフトウェアがたくさんありますlaunchd。私が個人的に一番好きなのは発射制御相馬区提供。価格は10ドルですが、ソフトウェアを無制限にダウンロードして使用できます。


とにかく、あなたの場合、~/Library/LaunchAgents/HelpfulFunctionsJob.plistファイルは次のようになります。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>HelpfulFunctions.job</string>
    <key>Program</key>
    <string>/Users/bclayman/Desktop/SquashScraper/helpfulFunctions.py</string>
    <key>RunAtLoad</key>
    <true/>
    <key>StartCalendarInterval</key>
    <dict>
        <key>Hour</key>
        <integer>23</integer>
        <key>Minute</key>
        <integer>0</integer>
        <key>Weekday</key>
        <integer>7</integer>
    </dict>
</dict>
</plist>

<string>/Users/bclayman/Desktop/SquashScraper/helpfulFunctions.py</string>実際のパスに変更してタスクをロードします。

launchctl load -w ~/Library/LaunchAgents/HelpfulFunctionsJob.plist

関連情報