タグ

awkに関するrhyaoshのブックマーク (2)

  • 改行に置換するためのワンライナー集(tr/sed/perl) · DQNEO日記

    ある文字を改行「に」置換する方法を紹介します。 事例:$PATHの中身が長くて見にいので、":"を改行に置換したい $ echo $PATH /Users/DQNEO/.rbenv/bin:/Users/DQNEO/.rbenv/shims:/Users/DQNEO/.plenv/bin:/Users/DQNEO/.plenv/shims:/usr/local/opt/coreutils/libexec/gnubin:/usr/local/bin:/Users/DQNEO/bin:/usr/bin:/bin:/usr/sbin:/sbin 横に長いので、改行で区切りたい! trで置換 こういう場合は、trコマンドを使うのが一番簡単です。 $ echo $PATH | tr ':' '\n' /Users/DQNEO/.rbenv/bin /Users/DQNEO/.rbenv/shims

    改行に置換するためのワンライナー集(tr/sed/perl) · DQNEO日記
  • 環境に依存しないワンライナーを書くならsedよりperlの方がいい - Qiita

    まえがき sedで環境に依存しないワンライナーを書きたかったけど、BSDとGNUの実装で微妙に挙動が違うせいで難しかった。で、いっそのことperlで書いた方がいいのでは、という結論になった。ぐぐったらperlのワンライナーの書き方出てくるけど何でそう動くのか分からなかったのでそれも調べた。そこらへんについてまとめる。 GNU sedとBSD sedの違い、perlからsedへの乗り換え方簡易版、その詳細、という感じでまとめたので知りたいところからどうぞ。 sedにはGNU sedとBSD sedがある sedで とかしようとすると実行する環境によって失敗する。 sedにはBSDの実装とGNUの実装があるからだ。-EはBSD sedで拡張正規表現を使うオプションで、GNU sedで拡張正規表現を使いたければ-rを使う必要がある。 じゃあ拡張正規表現を使わずにデフォルトの正規表現を使えばいいの

    環境に依存しないワンライナーを書くならsedよりperlの方がいい - Qiita
  • 1