Linuxテキスト処理コマンドを徹底解説(LPIC-1/LinuC-1対応)

Linuxを学ぶ上で避けて通れないのが「テキスト処理」です。
本記事では、LinuC-1(またはLPIC-1)試験範囲に登場する代表的なテキスト処理コマンドを解説します。


目次

🧩 テキスト処理とは?

Linuxではログや設定ファイルなど、ほとんどの情報が「テキストファイル」として保存されています。
そのため、テキストを効率的に扱うスキルが必須です。


📚 主なテキスト処理コマンド一覧

1. cat(ファイルの内容を表示)

catコマンドは、ファイルの中身を表示するコマンドです。

基本構文:cat ファイル名
  • -n:行番号を表示
  • -b:空行を除いた行に番号を付ける

2. cut(文字やフィールドを抽出)

cutコマンドは、行ごとに指定した部分(文字・区切りフィールド)を抽出するコマンドです。

基本構文:cut -d":" -f フィールド番号 ファイル名
  • -d:区切り文字を指定
  • -f:表示したいフィールド番号を指定

3. expand(タブをスペースに変換)

expandコマンドは、タブ文字をスペースに変換するコマンドです。

基本構文:expand -t タブ文字数 ファイル名
  • -t:スペース数の指定

4. unexpand(スペースをタブに変換)

unexpandコマンドは、スペースをタブに変換するコマンドです。

基本構文:unexpand -t 空白数 ファイル名
  • -t:空白の数の指定

5. fmt(段落を整形)

fmtコマンドは、テキストの整形(幅揃え)を行うコマンドです。

基本構文:fmt -w 文字数 ファイル名
  • -w:1行の最大幅を指定

6. head(先頭の行を表示)

headコマンドは、ファイルの先頭部分(デフォルトで10行)を表示するコマンドです。

基本構文:head -n 行数 ファイル名
  • -n:表示する行数を指定(省略可)

7. tail(末尾の行を表示)

tailコマンドは、ファイルの末尾部分(デフォルトで10行)を表示するコマンドです。

基本構文:tail -n 行数 ファイル名
  • -n:表示する行数を指定(省略可)
  • -f:リアルタイム追跡

8. join(共通フィールドで2ファイルを結合)

joinコマンドは、2つのファイルの共通フィールドで結合するコマンドです。

基本構文:join ファイル名1 ファイル名2

9. less(ページ単位で表示)

lessコマンドは、ファイルをページ単位でスクロール表示するビューアコマンドです。

基本構文:less ファイル名

エディタみたいな画面が開き、簡単な操作が出来ます。

-操作方法-

  • g:ファイルの先頭に移動
  • G:ファイルの終端に移動
  • SPACE:1画面進む
  • b:1画面戻る
  • /文字列:検索
  • q:終了

10. nl(行番号を付けて表示)

nlコマンドは、行番号付きでテキストを表示するコマンドです。

基本構文:nl ファイル名
  • -b a:全ての行に番号(空行にも番号付加)

11. od(バイナリデータを表示)

odOctal Dump)コマンドは、ファイルの内容をバイナリ(2進数)・8進数・16進数・ASCII 文字などで表示するコマンドです。
主に、バイナリファイルの中身を解析したいときに使われます。

基本構文:od -c ファイル名
  • -c:文字として表示

バイナリデータをエディタで開くと・・・

バイナリデータとは?

バイナリデータとは、コンピュータが直接扱う「0」と「1」の2進数で構成されたデータのことです。

例えば、画像ファイル(.jpg や .png)、音楽ファイル(.mp3)、実行ファイル(.exe や Linux のバイナリ)はすべてバイナリデータです。
それを無理にテキストエディタで開くと、文字化けした記号や意味不明な文字列が表示されることがあります。

12. paste(行単位で結合)

pasteコマンドは、行単位でファイルを横方向に結合するコマンドです。

基本構文:paste ファイル名1 ファイル名2
  • -d ",":区切り文字を指定

13. pr(印刷用整形)

prコマンドは、印刷用にページ分割やヘッダをつけて整形するコマンドです。

基本構文:pr -n ファイル名
  • -n:行番号を付加

14. sed(ストリームエディタ)

sedコマンドは、テキストを一括処理・変換できるストリームエディタです。ファイルや標準入力から読み込んだテキストに対して、検索・置換・削除・挿入などの操作を行えます。

基本構文:sed 's/old/new/g' ファイル名

よく使うオプション:

  • -e:複数の編集コマンドを指定
  • -i:ファイルを直接編集(上書き)
  • s:置換コマンド(s/旧/新/

15. sort(ソート)

sortコマンドは、行を並び替える(昇順・降順など)コマンドです。

基本構文:sort ファイル名
  • -r:逆順ソート
  • -n:数値順にソート

16. split(ファイルを分割)

splitコマンドは、ファイルを指定サイズで分割するコマンドです。

基本構文:split -l 分割したい行数 ファイル名 分割後のファイル名
  • -l:分割する行数を指定

17. tr(文字変換)

trコマンドは、文字単位の変換や削除を行うコマンドです。標準入力から読み込んだテキストの中の文字を、指定した文字に置き換えたり削除したりします。

基本構文:tr [変換前文字列] [変換後文字列]

✅ 使用例:
1. 小文字を大文字に変換:echo "hello" | tr 'a-z' 'A-Z'
➡ 出力:HELLO
2. スペースを改行に変換:echo "apple orange banana" | tr ' ' '\n'
➡ 出力:apple orange banana
3. 特定の文字を削除(-dオプション):echo "abc123" | tr -d '0-9'
➡ 出力:abc

18. uniq(重複行の削除)

uniqコマンドは、連続する重複行を取り除くコマンドです。

基本構文:uniq ファイル名
  • -c:重複回数を表示

19. wc(行数・単語数・バイト数)

wcコマンドは、行数・単語数・バイト数をカウントするコマンドです。

基本構文:wc ファイル名
  • -l:行数
  • -w:単語数
  • -c:バイト数

📝 最後に

テキスト処理のスキルは、LinuC-1の試験だけでなく、実務でも毎日のように使う重要な技術です。
最初は覚えることが多く感じるかもしれませんが、コマンドの意味と使い方をセットで覚えれば、自然と身についていきます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次