Linuxとコマンドラインの基礎

cron に「30 2 * * 1 /home/alice/backup.sh」と登録した。backup.sh が実行されるタイミングとして、正しいものはどれか。

  1. A毎月1日の2時30分
  2. B毎週月曜日の2時30分
  3. C毎週日曜日の2時30分
答えと解説を見る

正解:B. 毎週月曜日の2時30分

cron の設定(crontab)の各行は、先頭の5つの欄が左から「分、時、日、月、曜日」で、その後に実行するコマンドを書きます。この行は分が30、時が2、日と月が *(すべて)、曜日が1なので、毎週月曜日の2時30分に実行されます。曜日は0が日曜日、1が月曜日で、多くの実装では7も日曜日を表します。cron から実行するコマンドは、ログインしたときとは違う、限られた環境変数で動くので、スクリプトの中ではコマンドを絶対パスで書くなどの注意が必要です。

  • A. 毎月1日にするには、3番目の「日」の欄を1にして「30 2 1 * *」と書きます。5番目の欄は曜日です。
  • B. 正しい。分30、時2、曜日1(月曜日)を表します。
  • C. 曜日の欄では、0(または7)が日曜日で、1は月曜日です。
この分野を解く 分野ページへ

Linuxとコマンドラインの基礎の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

Linuxとコマンドラインの基礎のほかの問題

  1. Linuxのサーバで「ディスクの空きが少ない」という警告が出た。ファイルシステムごとの使用量と空き容量を調べるコマンドと、ディレクトリの中のファイルが使っている容量を合計して調べるコマンドの組み合わせとして、正しいものはどれか。
  2. 手元のPCで ssh-keygen を使って公開鍵認証の鍵の組を作り、サーバ server1 にパスワードなしで ssh で接続できるようにしたい。鍵の置き方として、正しいものはどれか。
  3. 「tar -czf proj.tar.gz proj/」を実行したときの動作として、正しいものはどれか。
  4. Gitで管理しているファイル main.c を編集した後、「git commit -m "fix"」だけを実行したところ、「no changes added to commit」と表示されてコミットされなかった。理由として、正しいものはどれか。
  5. Gitで git commit を実行したが、チームで共有している GitHub のリポジトリには、そのコミットがまだ表示されていない。理由として、正しいものはどれか。