この問題を解けたらスゴい!?シェルスクリプトとファイルディスクリプタの話
今回はシェルスクリプトのちょっとしたクイズからファイルディスクリプタとリダイレクトの動作を解説します。 早速ですがこのシェルスクリプトの問題を解けますか? 問: bashで以下のシェルスクリプトを実行した場合に表示される文字列はどれか? ※ echo の -n は改行を出力しないオプション ( echo -n "A" > /dev/null echo -n "B" 2>&
今回はシェルスクリプトのちょっとしたクイズからファイルディスクリプタとリダイレクトの動作を解説します。 早速ですがこのシェルスクリプトの問題を解けますか? 問: bashで以下のシェルスクリプトを実行した場合に表示される文字列はどれか? ※ echo の -n は改行を出力しないオプション ( echo -n "A" > /dev/null echo -n "B" 2>&
みなさん元気にシェルスクリプトを書いていますか? 今回は bash で任意のコマンドを非同期実行しつつ、その実行結果を手軽に受け取る方法を紹介します。 よく利用される bash の非同期実行は & をコマンドの最後に付けてバックグランドで実行する方法ですが、以下のような制限や面倒くささがありがちです。 実行結果として簡単に受け取れるのは終了ステータスだけ 実行結果を得たい場合は一時
今回は意外と知らないかもしれないbashの「プロセス置換」という機能を紹介します。 UNIXでは「1つのプログラムは1つの機能にとどめ、フィルタとして動作できるようにせよ」という設計思想があります。 その言葉の通り、大抵のコマンドはパイプでつないでフィルタのように動作可能ですが、必ずしも理想的に設計されていない、もしくは仕様上できないコマンドもあります。 例えば、よく使う diff コマンドが