【Linux】cat,lessとmoreの使い方及び違いについて
こんにちは。SSD-2事業部の新米社員H.Sです。
Linuxにはファイルの内容を表示するコマンドがいくつかあります。
代表的なコマンドのcat,lessとmoreの使い方及び違いについてまとめてみました。
では今回はLinuxの初心者向け、RedHat系のLinuxディストリビューションのCentOS Stream 9を使って、皆さんと一緒にcat,lessとmoreのコマンドについて復習して行きましょう。
1.catとは
書式:cat [オプション] <ファイル名>
#[オプション] の[]を書く必要がありません。<ファイル名>の<>を書く必要がありません。
1.1catの基本機能
ファイル内容の表示:
catコマンドの後ろにファイル名を指定すると、そのファイル名の内容が表示できます。
また、cat <ファイル名1> <ファイル名2>のように複数のファイル名を指定すると、複数のファイルの内容が順番に表示できます。
ファイル内容の編集
cat > <ファイル名>のようにcatとファイル名の間に大なり記号>を付いたら、ファイルの編集ができます。(存在しないファイルを指定する場合、指定したファイル名を新規として作成できます。ctrl+dまたはctrl+cを入力すれば、catコマンドが終了できます。以下同じ。)
cat <ファイル名1> <ファイル名2> > <ファイル名3> のように、複数のファイルのファイル内容を合併してからファイル名3に上書きします。
cat >> <ファイル名> 大なり記号>>二つ使うとファイル名内容の終わりに新しい内容の追加できます。
もちろんcat <ファイル名1> <ファイル名2> >> <ファイル名3>のように複数ファイルの内容がファイル名3の終わりに追加できます。
1.2catに関する常用のオプション
-nオプション:全ての行番号を付けてファイル内容を表示します
-bオプション:ブランク行を省略してファイル内容に行番号を付けます
-eオプション:各行の終わりに$に表示します
オプションを丸暗記必要ではありません、--helpオプションを使ったらポジションの一覧が表示できます。 活用すれば、仕事の効率が上がります。
1.3その他
上記cat > <ファイル名>などのコマンド、またはたまにcatなどのコマンドを何のファイルも指定せず間違ってEnterキーを押したら、カーソンが止まってしまい、何か入力したらその内容がそのまま表示されます。
その時、ctrl+dまたはctrl+cを入力すれば、catコマンドが終了でき、正常の画面に戻れます。
2.moreとは
2.1moreの基本機能
書式:more [オプション] <ファイル名>
catコマンドはファイル内容をそのまま一回で表示するだけです。しかし、ファイル行数が多すぎの場合は内容をそのまま表示すれば、見ずらいので、その代わりにmoreコマンドはファイル内容が1画面分ずつ分割して表示できます。
2.2more コマンドのスクロール操作
Enterキー:1行下にスクロールします
f、ctrl+f、スペースキー:一画面下にスクロールします
b、ctrl+b:一画面上にスクロールします
=:現在の行番号を表示します
q: moreコマンドを終了します
2.3moreに関する常用のオプション
+整数n オプション:n行目からファイル内容を1画面ずつ表示します
-整数n オプション:n行数に指定して1画面ずつ表示します
-cオプション:画面をクリアしてからファイル内容を1画面ずつ表示します
追記:-n整数オプションと-cオプションを組み合わせて使うパターンが多いです。例えば画面をクリアして、1画面を10行ずつ表示したい場合の書き方は、more -c -10 <ファイル名>またはmore -10 -c <ファイル名>です(-10cか-c10という書き方はダメです)。
3.lessとは
書式:less [オプション] <ファイル名>
3.1lessの基本機能
moreコマンドと同じ、lessコマンドもファイル内容が1画面分ずつ分割して表示できます。
moreコマンドとlessコマンドの違いについては、moreコマンドを使う時、ファイルの全体の内容を読み込んでから1画面ずつ表示します。それに対してlessコマンドはファイルの1画面の内容を読み込んで1画面ずつ表示します。従って、大きいファイルを読み込む時、感覚的にmoreコマンドよりlessコマンドのほうが読み込むスピードが速いです。
また、moreコマンドは自動的にプロンプトを表示します。lessコマンドは最後まで表示し終わってもqを入力しないとプログラムを終了しません。
3.2less コマンドのスクロール操作
lessコマンドのスクロール操作とmoreコマンドのスクロール操作がほぼ同じ、更に矢印の↑、↓とk、jでも1行上か下にスクロールできます。
3.3lessに関する常用のオプション及びファイル内の検索
-Nオプション:行番号を表示します
/<文字列>:ファイルから文字列を検索します
-iオプション:小文字と大文字を問わず文字列を検索します。
/の後ろに、検索したい文字列を入力してEnterキーを押すと、指定した文字列をファイルから検索できます。検索結果は複数の場合は小文字nを押すと、次の検索結果に移動します。大文字Nを押すと、前の検索結果に移動できます。
また-iオプションと/<文字列>を組み合わせて使えます。less -i <ファイル名>という形でも、文字列を検索途中で-iを入力しても、小文字と大文字を問わず検索したい文字列が検索できます。
4.まとめ
最後までご覧いただきありがとうございました。
cat,lessとmoreのコマンドの使い方と違いをまとめました。
これからもLinuxを楽しみながら勉強してください。
データ分析に興味のある方募集中!
コグラフソフトウェアサービス事業部(SSD)ではPythonやSQLの研修を行った後、実務に着手します。
研修内容の充実はもちろん、経験者に相談できる環境が備わっています。
コグラフの研修には実務を想定し着実にスキルアップを目指す環境がありますので、興味がある方は下記リンクよりお問い合わせください。