rohaniのブログ

ゆるっと自然言語処理奴。ときどき工作系バイト。

ファイル操作系bashコマンドの勉強

Linuxテキスト編集コマンドのすべて を参考に、bashコマンドのおさらいをした。

利用頻度高そうなものをメモしておく。

  • tail -f file.log
    • ログファイルの監視を続けたい時、末尾を表示し続けられる
  • cut -d, -f 1 file.txt
    • csvファイルのある列を抜き出せる
  • cut -c 1-5 file.txt
    • 各行の任意の範囲を表示。ファイルの行頭を舐めたい時などに
  • join
    • 2つのテーブルを結合することができる
    • -t , 区切り文字指定(デフォルトはtab)
    • -1 N 1つ目のファイルの一致を見る列(デフォルトは1)
    • --header 1行目はヘッダーとして扱う
  • tr "[:lower:]" "[:upper:]" < file.txt
    • 小文字を大文字に変換
    • tr -d "[:lower:]" < file.txt とかすると、小文字だけ消せる
  • split -p 区切り記号 file.txt
    • 区切り記号の入っている行の手前で分割
  • expand
    • タブを8スペースに変換できる。
  • unexpand
    • デフォルトでは、先頭の8スペースのみタブにできる。
  • column -t -s"," sample_sansan.csv
    • csvの列を揃えて見やすくできる。
  • sort file.txt | uniq
    • 重複する行を1つにして表示する。
    • -d(duplicate) -u(unique) 重複行やユニーク行のみ表示できる