prコマンド
prコマンドは印刷のためにファイルを整形し、出力します。
デフォルトでは、それぞれのページに5行のヘッダがつきます。ヘッダは2行の空行、日付・ファイル名・ページ番号の行、2行の空行から構成されます。各ページの末尾には全て空行の5行のフッタも出力されます。
[コマンド書式]
uniq -オプション 入力ファイル名 出力ファイル名
オプション | 説明 |
+開始ページ[:終了ページ] | 開始ページ/終了ページを指定します |
-h 文字列 | ヘッダに表示する文字列を指定します |
-l 行数 | 印刷1ページあたりの行数を指定します |
-w 文字数 | 1行あたりの文字数を指定します |
fmtコマンド
fmtコマンドはテキストファイルを指定した幅(デフォルトは75文字)より短い行を結合し、
長い行を分割して出力します。
[コマンド書式]
fmt -オプション ファイル名
-wオプションで1行あたりの文字幅を指定し、「-w 3」とすると、
1行の文字幅を3文字としますが単語は分割されません
[コマンド実行例]fmt.txtを文字幅3で分割しますが単語であるlevelは分割されません
$ cat fmt01.txt
01 aaa level1
02 bbb level2
$ fmt -w 3 fmt.txt
01
aaa
level1
02
bbb
level2
expandコマンド
expandコマンドはファイル内のタブをスペースに変換し出力します。
主なオプションは次のとおりです。
オプション | 説明 |
-i | 行頭のタブのみを変換します | -t タブ幅 | タブ幅(1つのタブがスペース何個に相当するか)を指定します デフォルトでは1タブ=8スペースとして変換されます |
$ cat expand.txt
01 aaa level1
02 bbb level2
[コマンド実行例]expand.txtの行頭タブだけを幅1のスペースに変更
$ expand -i -t 1 expand.txt
01 aaa level1
02 bbb level2
[コマンド実行例]expand.txtのタブを幅1のスペースに変更
$ expand -t 1 expand.txt
01 aaa level1
02 bbb level2
unexpandコマンド
unexpandコマンドは、expandコマンドとは逆に、テキストファイルの中にあるスペースをタブに変換し出力します。
主なオプションは次のとおりです。
オプション | 説明 |
-a | 行頭以外のスペースもタブに変換します デフォルトでは行頭のスペースのみタブに変換します |
-t タブ幅 | タブ幅(1つのタブがスペース何個に相当するか)を指定する デフォルトでは8スペース=1タブとして変換されます |
[コマンド実行例]unexpand.txtの行頭スペースをタブに変更
$ cat unexpand.txt
01 aaa level1
02 bbb level2
$ unexpand -t 8 unexpand.txt
01 aaa level1
02 bbb level2
[コマンド実行例]unexpand.txtの全てのスペースをタブに変更
$ unexpand -t 8 -a unexpand.txt
01 aaa level1
02 bbb level2
見た目ではわかりませんが、各結果の空白はスペースからタブに変更されています。