0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[Linux][command] テキスト処理_cat, nl, od, head, tail, cut, paste, tr, sort, split, uniq, wc, xargs, md5sum, grep, fgrep, sed

Last updated at Posted at 2025-02-02

catコマンド

$ cat [ファイル名]
オプション 由来 説明
デフォルト
concatenate(連結する)
- ファイルの内容を標準出力に表示する
-n - 各行の左端に行番号を追加する

nlコマンド

$ nl [オプション] [ファイル名]
オプション 由来 説明
デフォルト - テキストファイルの一部または全部に行番号をつけて表示する
-b 形式 body(全文) - 形式で全文に行番号をつける
-h 形式 header - 形式でheaderに行番号をつける
-f 形式 footer - 形式でfooterに行番号をつける

odコマンド

$ od [オプション] [ファイル名]
オプション 由来 説明
-t type 出力フォーマットを変更する(-t で指定した形式で表示)
出力フォーマット 由来 説明
default octal dump - ファイルを8進数(オクタル)形式で表示する
-o octal 8進数形式でファイルの内容を表示する
-x hexadecimal 16進数形式でファイルの内容を表示する
-c character ファイル内容をASCll文字として表示する(バイナリデータを対応する文字に変換)

trコマンド

$ tr [オプション] [文字列1 [文字列2]]
オプション 由来 説明
default translate - 標準入力から読み込まれた文字列を変換・削除する
-d delete - [文字列1]でマッチした文字列を削除する
-s squeeze(絞る) - 連続するパターン文字列を1つに絞る

sortコマンド

$ sort [オプション] [ファイル名]
オプション 由来 説明
default sort - 行単位でファイルの内容をソートする
- 昇順でソートする
-b ignore leading blanks - 先頭の空白を無視して比較する
-d dictionary order - 英数字と空白のみを考慮して比較する
-f fold case - 大文字小文字を区別せずに比較する
-g general numeric sort - 数値として比較(指数表記も対応)
-i ignore non-printing - 印刷できない文字を無視
-M month sort - 月名(Jan, Feb, ...)でソート
-n numeric sort - 数値として比較(整数のみ)
-r reverse - 降順(逆順)にソート
-k key - 指定したフィールド(列)でソート
-t field separator - フィールド(列)の区切り文字を指定
-u unique - 重複行を削除
-V version sort - バージョン番号順にソート
-o output file - 結果を指定したファイルに保存
-c check - ソートされているか確認
--help help - 使用方法を表示
--version version - バージョン情報を表示

splitコマンド|オプション

オプション 由来 説明
デフォルト - 行単位でファイルを分割する
- 1000行で分割する

wcコマンド

$ wc [オプション] [ファイル名]
オプション 由来 説明
default word count - 指定したファイルの行数・単語数・バイト数を表示
-l lines - 行数のみを表示
-w words - 単語数のみを表示
-c bytes - バイト数のみを表示
-m characters - 文字数(マルチバイト対応)を表示
-L longest - 最も長い行の文字数を表示

ファイルをハッシュ値にするコマンド

コマンド 説明
md5sum MD5(ハッシュ関数)によるハッシュ値の出力
sha1sum SHA1(ハッシュ関数)によるハッシュ値の出力
sha256sum SHA256(ハッシュ関数)によるハッシュ値の出力
sha512sum SHA512(ハッシュ関数)によるハッシュ値の出力

grepコマンド

$ grep [オプション] 検索パターン [ファイル名]
$ grep [オプション] [-f ファイル名] [ファイル名]
オプション 由来 説明
デフォルト 指定したパターンにマッチする行を検索して出力する
-i ignore case 大文字・小文字を区別せずに検索する
-v invert match 指定したパターンにマッチしない行を出力する
-c count マッチした行数を表示する
-l list マッチしたファイル名のみを表示する
-n number マッチした行の行番号を表示する
-r または -R recursive サブディレクトリ内も再帰的に検索する
-w word 完全に一致する単語のみを検索する
-o only matching マッチした部分のみを表示する
-E extended 拡張正規表現を使用する

fgrepコマンド

  • fgrep(Fixed-string GREP)は、特殊な正規表現を使用せずに固定文字列を検索するコマンド
  • 通常の grep よりも高速に検索できる
  • fgrep は非推奨とされており、代わりに grep -F の使用が推奨される
$ fgrep [オプション] 検索パターン [ファイル名]

grepコマンドの場合

"a" と "b" の間に任意の1文字を含む行を検索

$ grep "a.b" file.txt

fgrepコマンドの場合

"a.b" という文字列そのままを検索

$ fgrep "a.b" file.txt

sedコマンド

$ sed [オプション] 編集コマンド [ファイル名]
$ sed [オプション] -e 編集コマンド1 [-e 編集コマンド2...] [ファイル名]
$ sed [オプション] -f スクリプトファイル [ファイル名]

sed コマンドのオプション一覧

オプション 由来 説明
デフォルト 標準入力またはファイルからテキストを読み込み、指定した編集を適用して出力する
-e edit 複数の編集コマンドを指定できる
-f file 編集コマンドを記述したスクリプトファイルを読み込んで実行する
-i in-place ファイルを直接編集し、変更を適用する
-n no output 自動出力を無効化し、p コマンドを使った明示的な出力のみを許可する
-r または -E extended 拡張正規表現を使用する
-s separate 入力ファイルを個別に処理する
-z zero separated NUL 文字 (\0) をレコード区切りとして処理する

sed の基本的な編集コマンド

コマンド 役割 説明
y/文字1/文字2/ 文字の変換 sed 'y/abc/xyz/' file.txt axbycz に1文字ずつ変換
s/文字列1/文字列2/ 文字列の置換 sed 's/foo/bar/' file.txt 各行の最初の foobar に置換
s/文字列1/文字列2/g すべての一致を置換 sed 's/foo/bar/g' file.txt すべての foobar に置換
文字列/d 一致した行を削除 sed 's/foo/bar/d' file.txt foo にマッチした行を削除
d 指定行を削除 sed '2d' file.txt 2行目を削除
p 指定行を出力 sed -n '3p' file.txt 3行目のみを表示(-n で他の行を抑制)
a 指定行の後に追加 sed '2a\ 追加するテキスト' file.txt 2行目の後に "追加するテキスト" を追加
i 指定行の前に挿入 sed '1i\ 追加するテキスト' file.txt 1行目の前に "追加するテキスト" を挿入
c 指定行を置き換え sed '3c\ 置き換えたテキスト' file.txt 3行目を "置き換えたテキスト" に変更
q 指定行で終了 sed '5q' file.txt 5行目を出力後、処理を終了

Ping-t

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?