grep linux

[linux] grepでファイル単位の検索条件

grepを使うときは基本的に1行の中のパターンを検索するし、たいていの場合はそれで問題ない。 でも、たまに条件に合致するファイルを抽出する必要がでてきたりするよね。 行単位ではなく、ファイル単位での検索条件を考えてみよう。 準備 今回、試したのはGNU grep。 ま...

C linux unix

[unix] 標準出力の接続先によって、動作を変える

[unix] パイプ処理時のバッファリング ではgrepやsedに出力のバッファリングオプションがオプションがあるのを見た。 他にも出力先によって、動作が変わるコマンドはある。 lsの出力 例えば、lsも出力先が端末だと、ファイル名を適当に区切って並べてくれるけど、出力先...

awk bash grep linux sed unix シェルスクリプト

[unix] パイプ処理時のバッファリング

xargsで出力を遅延させる フィルタの役割をするコマンドは大抵バッファリングするので、teeとかでデバッグしていると、フィルタリングされたテキストがすぐに端末に表示されないことがある。 何かバッファリングの効果を目に見えるように再現できるいい方法はないかなと思ってやってみた...

awk sed unix シェルスクリプト

[sed] sedのホールドスペースの練習

[awk,Ruby,C#,Java]いくつかの言語でフィボナッチ数生成 でawkとかを使ってフィボナッチ数列を生成したけど、sedでこれができないかなーと思ってやってみた。 sedでフィボナッチ数列生成 sedは数値演算を直接サポートしていないので、文字列の長さを数字とみな...

awk unix シェルスクリプト

[awk] awkで指定行毎に改行除去

行区切りのデータを適当な行数でまとめる で paste を使って、指定行毎に改行を除去する方法を書いたけど、改めて見ると、こんなの awk で簡単にできるじゃん。 指定行毎に改行を除去するってのは 1 2 3 4 5 6