を使用すると、expand
タブをいくつのスペースに変換するかを理解できません。からinfo expand
:
デフォルトでは、拡張はすべてのタブ文字を空白に変換します。出力でバックスペース文字を保持し、タブで計算される列数を減らします。デフォルトの操作は-t 8(8列ごとのタブ設定)と同じです。
しかし:
$ cat file
aa bb
$ cat -A file
aa^Ibb$
$ wc -m file
6 file
$ expand file > file2
$ cat -A file2
aa bb$
$ wc -m file2
11 file2
ここではタブを6つの列に変換します。なぜ?
答え1
これ拡張ユーティリティは、ファイルまたは標準入力を標準出力に書き込んで、その文字を次のタブ停止まで埋めるために必要な文字に
<tab>
置き換える必要があります。<space>
-t 8
場所タブ止める8文字で区切られます。入力のaa
タブ()の前の行の先頭には2つの異なる文字があるため、次のタブの停止に移動するには6つのスペースしか必要ありません。