2017-08-03 9 views
0

私はいくつかのスクリプトをcronで実行しているので、それらを停止する必要があるので、特定の単語を含むcronジョブをコメントアウトするシェルスクリプトを作成します。特定の単語を含むcronジョブをコメントアウトしてコメントを外します。

「start_bots」を含むcronジョブをシェルスクリプトでコメントアウトしてコメントを解除するにはどうすればよいですか?私は "sed"を使っていくつかの解決策を見ましたが、私はそれに精通していません。

*/3 * * * * /home/pi/Development/instabot.py/start_bots.sh 
0 */3 * * * /home/pi/Development/instabot.py/stop_bots.sh 
0 0 */3 * * /home/pi/Development/instabot.py/remove_logs.sh 

答えて

1
sed -i /start_bots/s/^/#/ cronfile 
  • -iオプションは、新しいファイルに編集したコンテンツをストリーミングして、舞台裏でそれを変更します。
  • /start_bots/はライン^^は、行の先頭を表す)の先頭にコメント文字#を挿入します
  • 置換の上にマッチしたライン上の置換を行うstart_bots
  • sと行と一致します。
+0

私はこのメッセージを "sed:1:" cronfile "とします:コマンドcは、ターミナルの\" sed -i/start_bots/s/^ /#/ cronfile " –

+0

質問は何ですか?あなたはエラーになっていますか? 'cronfile'をあなたのファイル名に置き換えましたか? – skr

+0

私は 'crontab -l | sed '/ restart_bots/s/^ /#/' | crontab -'! –

関連する問題