このフォーラムの質問と回答を読んだ後、質問のしきい値が非常に高いことを感じました。少なくとも私のようにLinuxについてほとんど知らない人にはそうです。クローンの仕事に関するほとんどの質問は、答えを含む私の能力を超えることです。だから少し恥ずかしい心で最も簡単な質問をしましょう。
毎分のデータ/時間を表示するcronジョブを作成したいと思います。コンソールでリアルタイムで見たいです。私はこれが最終的にbashスクリプトまたはPythonを介して実行されると思いますが、今はコマンドラインを使用したいと思います。
crontab -e
* * * * * /bin/date >> /home/pi/cron_date
星の概念を理解しました。 「日付」がどこにあるかを見つけるために「which」コマンドを使用します。この「日付」情報はまだ生成されていませんが、Enterキーを押すと、cron_dateというファイルが生成されるファイルにリダイレクトされます。
私は「nano」エディタを使用しています。 Control + OはWriteOutです(保存/別名で保存)。
File Name to Write: /tmp/crontab.D3AZm/crontab
質問1:Enterキーを使って、「nano」が好きなように呼び出すようにしました。私のcron_dateファイルはまだ/home/piの下に作成されます。私に与えられたファイル名「nano」は一時ファイルであることを知っています。しかし、このファイルを私のものにすることにしたので、「ナノ」の提案を削除して次に置き換える必要がありますか?
File Name to Write: /home/pi/cron_date
それとも、実際に考える必要がないことについて考えているのでしょうか?現在、私は何も置き換えずにこの一時ファイルの名前を「nano」と指定しています。
crontab: installing new crontab
crontab -l
私のファイルが存在します。今問題は、ファイルをリアルタイムで見ることです。以下で日付/時刻を確認できます。
nano cron_date
cat /home/pi/cron_date
ただし、情報を更新するには同じコマンドを使用する必要があります。私が持っているファイルの唯一のライブビューは次のとおりです。
tail -f /home/pi/cron_date
質問2:ファイル全体が更新されるのを見る方法はありますか?
これは私がしたい趣味プロジェクトの始まりです。ラズベリーパイを使って川底の写真を撮りましょう。趣味用ROVを作る予定です。カメラ付きのRaspberry Piが水に浸ったら、温度と時間を測定したいと思います。過熱すると、ファンを見てオンにすることができます。私は間違っているかもしれませんが、クローンの仕事の理解はプロジェクトの出発点です。
Raspberry Pi 1モデルB:Debianを使用してください。
答え1
このコマンドを実行すると、crontab -e
一時ファイルを編集できます。エディタを終了すると、一時ファイルに構文エラーがあるかどうかを確認し、エラーがない場合は、ユーザーのcrontabを含むシステムディレクトリにインストールされます。ファイルを別の場所に保存すると、一時ファイルは変更されないため、古いcrontabはそのまま残ります。crontab -l
crontabの内容を確認するには、コマンドを実行してください。
各cronジョブはホームディレクトリで実行されます。これは、編集する一時ファイルの場所とまったく関係ありません。別のディレクトリでタスクを実行するには、次のコマンドを使用して起動しますcd
。
* * * * * cd ~/subdir && date >>somefile
これはホームディレクトリ(すでに存在する必要があります)のディレクトリに変更され、出力が記録さsubdir
れdate
ます/home/pi/subdir/somefile
。cd
コマンドが失敗した場合(たとえば、ディレクトリが存在しないため)、date
コマンドは実行されません&&
。
date
デフォルトのコマンド検索パスにあるように、フルパスを作成する必要はありません。
「更新されるファイル全体を見る」とはどういう意味なのかわかりません。このコマンドは、tail -f
実行時にファイルの最後の10行を表示し、永久に(またはユーザーが終了するまで)実行され、追加された行を表示します。新しく追加された行のみを表示するには(つまり、起動時に何も表示しないtail
)、ゼロ行を出力するように指示します。
tail -n 0 -f /home/pi/cron_date
ファイル全体を表示してから追加された新しい行を印刷するには、tail
行1から始めるように指示します。
tail -n +1 -f /home/pi/cron_date