インフラ

【Linux】コマンドを繰り返し実行する方法

linuxコマンド繰り返し

こんにちは、ちゃりおです。

コマンドを繰り返し実行したいことってたまにあると思います。
DNSの設定変更して、digで切り替わっているかやサーバへの疎通、プロセスの確認など。

そんなときに便利なコマンドを紹介します。

ちゃりお
ちゃりお
コマンドを繰り返し実行する方法です。

watch

watchコマンドは、指定したコマンドを定期実行できるコマンドです。

Macで使う場合は、インストールが必要です。

$ brew install watch

下記のように実行できます。2秒ごとにdateコマンドを実行します。

$ watch date
local: Sat Jul 11 08:50:47 2020

2020年 7月11日 土曜日 08時50分47秒 JST

-nや-dオプションを個人的にはよく使います。
-nで実行間隔を秒単位で指定できます。
-dで出力結果に変更があった際に、出力がハイライトされます。

$ watch -n 5 -d date
local: Sat Jul 11 08:50:47 2020

2020年 7月11日 土曜日 08時50分47秒 JST

参考 【 watch 】コマンド――コマンドを一定間隔で繰り返し実行する

while true; do date; sleep 1s; done

while文を使った書き方です。
whileでループして、コマンドを実行→スリープを繰り返します。

$ while true; do date; sleep 1s; done
2020年 7月11日 土曜日 08時51分28秒 JST
2020年 7月11日 土曜日 08時51分29秒 JST
2020年 7月11日 土曜日 08時51分30秒 JST
2020年 7月11日 土曜日 08時51分31秒 JST
2020年 7月11日 土曜日 08時51分32秒 JST
2020年 7月11日 土曜日 08時51分33秒 JST
2020年 7月11日 土曜日 08時51分34秒 JST
2020年 7月11日 土曜日 08時51分35秒 JST

watchコマンドではコンソール上に出力の履歴が残らないですが、この方法だと履歴を残すことができます。

まとめ

今回はコマンドを繰り返し実行する方法について紹介しました。
僕は履歴を残したいときは「while true・・」を使って、履歴がいらないときはを書くのが面倒なのでwatchコマンド使っています。

誰かの参考になれば幸いです。

インフラのテストで 使えるコマンド
インフラの結合テスト・負荷テストの時に使えるコマンド(CPU、メモリ、ディスク)サーバの結合テスト・負荷テストをたまに作ることがあります。 新人の頃は、何を作ればよいのか分からない状態でした。 最近作れるようにな...
ntpコマンド
これだけは知っておきたいNTP関連コマンドこんにちは、ちゃりおです。 本番サーバの時刻ずれをこないだ初めて経験したので、解決するために使用したntp関連コマンドをまとめます。 ...
linux再起動
[初心者向け]サーバ再起動するときにこれだけは確認しておきたいことこんにちは、ちゃりおです。 運用中のサーバ再起動することあまりないので、なんか怖いですよね。 不安を減らすために確認しておきたいことを...

Amazonで「Linux」の本をみてみる!!