サーバー上のファイルの中身を確認するときって、どんなコマンドを使っていますか?
私は、短いファイルの場合はcat、長いファイルの場合はlessを使っています。
リモートエクスプローラーから、sakuraとかで開くより楽ちんです。
あなたがlessを使いたくなる理由
moreの上位互換
「上位互換」という響きだけで、使いたくなりますよね?
名前の由来も、「moreの対義語だから」です。素敵ですね。
「moreと何が違うの?」という説明は、今どきmoreを使う機会が無いという理由から割愛します。
manやgitコマンドのデフォルトのページャー
何かが当たり前のようにlessコマンドを使っている。
これはもう、使いたくなりますよね?
簡単、早い
サーバー上で
$ less <ファイルパス>
と入力すればパッと画面が切り替わって、ファイルの内容を読むことができます。起動もとても早いです。
時間の節約になるんだから、使いたくなりますよね?
lessを使いこなしてる感じが出る操作方法
使っていて気持ちがいいと、使いたくなりますよね?
矢印キー・マウスホイールを使う必要はありません。
キーボードから手を動かさずにスイスイとファイルが読めるようになる、必要十分なコマンドを紹介します。
大文字の場合は(Shift+)だと思ってください。
大抵の場合は、小文字の場合と逆の動作をします。
キー | 動作 | 覚え方 |
---|---|---|
j | 1行下へ (↓キーと同じ)数字入力後なら指定行下へ | joshi |
k | 1行上へ (↑キーと同じ)数字入力後なら指定行上へ | kousei |
d | 半ページ下へ | down |
u | 半ページ上へ | up |
f | 1ページ下へ (PgDownと同じ) | foward |
b | 1ページ上へ (PgUpと同じ) | back |
/<pattern> | patternの文字列を下方検索 | |
?<pattern> | patternの文字列を上方検索 | |
&<pattern> | patternの文字列に一致する行のみを表示。"&"に続けて"!"を入力すると、マッチしない行のみの検索となる | |
n | 検索した文字列の次のマッチへ | next |
N | 検索した文字列の前のマッチへ | |
g | ファイルの先頭へ | |
G | ファイルの末尾へ | |
n(数字)G | n行目へ | |
q | 終了 | quit |
また、起動時にオプションでNを渡すか、起動後に"-N、<Enter>"と入力すれば、行番号が表示されます。
これがあるだけで、とてもいいページャーな気がしてきます。
環境変数でデフォルトに設定することも可能です。(詳細は割愛)
私は、ローテートされていない長いエラーログを読むときなどは、起動後すぐにGを押しています。
こんな時にもお役立ち
活躍の場は、ただ単にファイルを読むだけに留まりません。
役に立つ子って、使いたくなりますよね?
- コマンドの結果が標準出力に出る場合
ls -lR や tree を使った場合など、標準出力に長く結果が出てしまって、スクロールするのが面倒ですよね。
そんなときはこれ。
$ ls -lR | less
パイプで渡せば、じっくり&快適に読めます。
- ファイルの末尾を追跡する
tailfでもできますが、ログが追記された時などに、再度開き直す必要はございません。
Fを押すことで、末尾を追跡するモードになります。(抜けるのは Ctrl + c)
締めに
ファイルの中身を確認する時の方法として、lessコマンドを使いたくなりましたでしょうか?
その他、よく使うコマンドやオプションがありましたら、お気軽にコメントなどでご指摘いただけると助かります。