2021.10.06
タブとスペースの変換 ~expandコマンド・unexpandコマンド~
本記事の対象者
LPIC level1習得を目指す初学者の方
コマンドの基本的な用途について、要点を絞って解説します。
今回の内容
今回は、expandコマンドとunexpandコマンドについて解説します。
expandコマンド
expandコマンドは、文書内に含まれるタブをスペースに変換するコマンドです。
expand | |
---|---|
意味 | タブをスペースに変換する |
書式 | expand [オプション] ファイル |
主なオプションは以下になります。
オプション | |
---|---|
-t | タブ1つあたりのスペースの数を指定する |
-i | 行頭のタブのみ変換する |
例①)
タブをスペースに変換し、新規ファイルとして出力
[root@localhost test]# cat test1.txt aaa 1111 bbb 2222 ccc 3333 [root@localhost test]# expand test1.txt > test2.txt [root@localhost test]# cat test2.txt aaa 1111 bbb 2222 ccc 3333
例②)
タブを3つのスペースに変換し、新規ファイルとして出力
[root@localhost test]# expand -t3 test1.txt > test3.txt [root@localhost test]# cat test3.txt aaa 1111 bbb 2222 ccc 3333
unexpandコマンド
unexpandコマンドは、expandコマンドとは逆のことを行います。スペースをタブに変換して出力を行います。
unexpand | |
---|---|
意味 | スペースをタブに変換する |
書式 | unexpand [オプション] ファイル |
主なオプションは以下になります。
オプション | |
---|---|
-t | タブに変換するスペースの数を指定する |
-a | 行頭のタブ以外も変換する |
例①)
スペースをタブに変換し、新規ファイルとして出力
[root@localhost test]# unexpand test2.txt > test4.txt [root@localhost test]# cat test4.txt aaa 1111 bbb 2222 ccc 3333
まとめ
今回は、タブとスペースの変換を行うコマンド2つを見てきました。
文章ではタブとスペースを表すのが難しいので、是非ご自身で操作を行って確認してみてください。変換を行った後、viエディタで開いてカーソルを動かすとタブとスペースの違いが分かるかと思います。
確認問題
問題
スペースをタブに変換して出力するコマンドは次のうちどれか。
A) fmt
B) chtab
C) expand
D) unexpand