はじめに
こんにちは!今回はfoldコマンドについて解説します。
foldは長すぎるテキスト行を指定した幅で折り返すコマンドです。長い1行を複数行に分割する時に超便利!
メール本文を80文字幅で表示したり、古いターミナルに対応させたりする時に活躍するコマンドなので、これを機にマスターしちゃいましょう!
foldコマンドとは
foldは、入力ファイルの行を指定された文字幅で折り返して出力する外部コマンドです。
例えば、1000文字の長い行があった場合、fold -w 80を使えば80文字ごとに行を分割できます。テキストメールやレポートを一定幅で整形したい時に重宝します。
基本構文
|
|
ファイルを指定しない場合は標準入力から読み込みます。
主なオプション
| オプション | 説明 |
|---|---|
-w |
折り返し幅を指定(デフォルトは80) |
-b |
バイト単位で折り返す |
-s |
単語の途中では折り返さない(スペースで折り返す) |
-c |
マルチバイト文字を1文字として扱う(GNU拡張) |
使用例
例1: デフォルト幅(80文字)で折り返し
|
|
実行結果:
|
|
デフォルトの80文字幅で折り返されます。
例2: 指定幅で折り返す
|
|
実行結果:
|
|
40文字幅で折り返します。
例3: 30文字幅で折り返す
|
|
実行結果:
|
|
30文字幅での折り返しです。
例4: 単語の途中では折り返さない
|
|
実行結果:
|
|
-sオプションで単語の途中では折り返さず、スペースで折り返します。
例5: バイト単位で折り返す
|
|
実行結果:
|
|
バイト単位(厳密には指定幅)で折り返します。
例6: ファイルの内容を折り返す
|
|
実行結果:
|
|
ファイルを指定して折り返せます。
例7: 複数ファイルを処理
|
|
実行結果:
|
|
複数ファイルを同時に処理できます。
例8: パイプで利用
|
|
実行結果:
|
|
他のコマンドと組み合わせて使用できます。
例9: 日本語テキストの折り返し
|
|
実行結果:
|
|
日本語の折り返しも可能です。
例10: メール本文を80文字幅で整形
|
|
実行結果:
|
|
メール本文を標準的な80文字幅に整形して保存できます。
Tips・注意点
折り返し幅のデフォルト値
-wを指定しない場合は80文字幅で折り返されます。
|
|
単語の途中での折り返しを避ける
-sオプションを使うと、単語の途中では折り返さず、スペースの位置で折り返します。
|
|
マルチバイト文字の処理
日本語などマルチバイト文字を扱う場合は注意が必要です。
|
|
実践的な使い方
メールの整形
|
|
メール本文を標準的な幅に整形して送信します。
ドキュメントの整形
|
|
ドキュメントを72文字幅で整形して保存します。
ログファイルの整形表示
|
|
長いログエントリを120文字幅に折り返して、lessで閲覧します。
まとめ
foldコマンドのポイント:
- 長い行を指定幅で折り返す基本コマンド
-wオプション: 折り返し幅を指定(デフォルトは80)-sオプション: 単語の途中では折り返さない-bオプション: バイト単位で折り返す- メール本文やドキュメントの整形に便利
- よく使う組み合わせ:
fold -w 80、fold -w 72 -s
長いテキストを一定幅で折り返したい時はfoldを使いましょう!