Corredor

ウェブ、プログラミングの勉強メモ。

テキストファイルを確認する Linux コマンドのまとめ

普段 Linux 環境でテキストファイルを見たり編集したりする時、僕はもっぱら Vim を使っている。しかし、ログファイルを閲覧したりする時は、less とかを上手く使えるとカッコイイ気がする。

そこで今回は、今更ながらテキストファイルを閲覧するコマンド類をまとめてみようと思う。

vi

おなじみテキストエディタ。VIsual editor とか Visual Interface とかの略らしい。

POSIX 準拠らしく、Linux OS にはプリインストールされているのが特徴。コレの使い方だけ覚えておけば、閲覧も編集もとりあえずできる。

とりあえずの使い方は以前紹介した以下の記事を参照のこと。

neos21.hatenablog.com

neos21.hatenablog.com

neos21.hatenablog.com

vim

vi の改造版。Vi IMproved の略。

機能が拡充されているが、最近は vivim のエイリアスになっている場合すらある。が、エイリアスになってることを期待して vi と打っていると、vim ではなく機能が少ない vi が起動していることもあるので、やっぱり意識して vim と叩いた方が良いのかも。

view

vi のエイリアスだが、ファイルを読み取り専用モードで開ける。インサートモードに移ると警告文が出るが編集はできて、無理やり保存する時は :w! とすれば一応保存もできる。

more

ファイルを1画面ごとに閲覧できる、ページャと呼ばれるコマンド。1978年に開発された。

  • dSpace で1画面下がる
  • zEnter で1行下がる
  • b で上に戻る
  • h でヘルプ表示
  • q で終了
  • vvi が開く

元々は下の行に移動していく機能しかなく、上の行には戻れなかったようだ。だから More なのねん。最終行に移動する機能はなさそう。

less

more より高機能なページャコマンド。1983年に開発された。日本語への対応が上手くいかない場合もあったようだが、最近はあまり気にしなくて良さそう。

  • du で大きく移動
  • jk で1行移動
  • h でヘルプ表示
  • q で終了
  • g で1行目に移動
  • G (Shift + g) で最終行に移動

emacs

Vi とエディタ論争を巻き起こしていた Emacs。MacOS はプリインストールされてるが、CentOS などはプリインストールされていない、という点で、最近はあまり人気が高くない様子。ローカルで好きに使うならいいけど、サーバ管理する際は使わないと思う。

cat

本来は CATenate のとおり、複数のファイル結合するためのコマンド。ファイルを1つだけ指定した場合に、ファイル全量を標準出力に書き出す動きをするので、ファイルの内容を確認するために使ったりする。

「Useless Use of cat 無駄な cat の使用」というジャーゴンがあったりして、cat 使わなくても実現できるのに使ってる例がよくある。

  • $ cat file.txt | grep 'HOGE'$ grep 'HOGE' ./file.txt

tac

ファイルを最終行から逆に出力する。cat のつづりが逆転して tac、というワケ。

GNU CoreUtils に含まれているコマンドで、Linux 系なら入っているだろうが、MacOS には入っていない。MacOS では tail -r というコマンドを使うと良い。

  • $ tac example.txt | head -1$ cat example.txt | tail -1 と同じく、最終行が表示できる
  • $ tac a.txt b.txt とすると、a.txt の逆順 → b.txt の逆順、の順に結合・出力する。b.txta.txt より先にはならないので注意
  • 参考:逆順出力 tac と tail -r - Qiita

ログファイルの最後から遡って確認する時に良いかも。

以上

今までなんとなく more とか less とか叩いていたが、少し体系的に覚え直せた。

入門vi 第6版

入門vi 第6版

  • 作者: リンダラム,アーノルドロビンス,Linda Lamb,Arnold Robbins,福崎俊博
  • 出版社/メーカー: オライリー・ジャパン
  • 発売日: 2002/05/01
  • メディア: 単行本
  • 購入: 14人 クリック: 193回
  • この商品を含むブログ (75件) を見る

実践Vim 思考のスピードで編集しよう! (アスキー書籍)

実践Vim 思考のスピードで編集しよう! (アスキー書籍)