投資とプログラミングな日々

投資が趣味なITエンジニアの雑記ブログです。

bashでwhile無限ループを1行コードで書く方法

シェル(bash)で無限ループを1行コードで書く方法をメモしておきます。

なんでこんな記事を書くかっていうと、最近そんなニーズが自分にあったからですw

bashで無限ループ(1行コード)サンプル

  • 1秒おきに「test」と無限ループを続けるシェル1行コードです。

コード

 while true; do  echo test; sleep 1s; done

結果

  • 延々と「test」が出力されていますね。

f:id:toyo--104:20190128233437p:plain

改行はセミコロンで表現しよう

  • サンプルコードを改行したら、以下のようになります。
  • セミコロンで改行を表していたことがわかります。
while true
do echo test
sleep 1s
done

そもそもbashでwhileループってどう書くの?

  • 以下のようにwhileループを表しますよ!
while 条件式
do ループで行う処理
done

まとめ 1行で無限ループを書けるとかっこいい

ぼくがこの1行ループを書きたいと思ったのは、プロセス確認用のコマンドを、手動で何回も「↑」キーを押して同じコマンドを実行していたので、「だっせ~」と思ったからです。

単純な話なんですが、無限ループワンラインコマンドを覚えて、ちゃちゃっと使えるようにすれば、周りのエンジニアにも格好がつけられるかもしれません。