34テキスト処理(整列)

基本形 各行を複数列に分けて整列する

column [オプション] [ファイルのパス]


-x 行から先に埋める(指定しなければ列から先に埋める)

-t 列の数を判定して整形して表示する

-c  1行の桁数を指定する

-s  tオプションを指定する場合にどの文字を列の区切り文字として判断するか指定する
   複数指定可能(指定しない場合は空白文字)


デフォルトでは1行に表示できる列はディスプレイの幅に合わせられる

また列から先に埋まっていく


1行に一つの情報が入っているファイルを列方向に整形する




行から先に埋まるようにしさらに1行の桁数を80文字以下にする




【問題34-1】

①元ファイルをソートしてから1行70文字以下で行から先に埋まるよう整形するにはどうすればよいか  p.84

[guest@icv99 ~]$ ●●●●●●●●●●
hanako@gmail.com        hati33@gmail.com
hati33@gmail.com        ichiro@gmail.com
kashima22@gmail.com     kooriyama@gmail.com
tanaka1@mix.gmail.com   ttanaka@mix.gmail.jp
yamada3@gmail.com
[guest@icv99 ~]$


実行コマンドと実行結果をファイル
Question341.txt
に保存して、提出サーバへ送信すること。


-tオプションで整形されていない表を美しく整えられる

table.txtは各フィールドの文字数や間隔がまちまちで、先頭位置がそろっていない
またフィールドの区切り文字も「スペース」「,」が混在している


列の区切り文字を「スペース」「,」と見なして整形する






【問題34-2】

②table.txtをcsv形式に整形するにはどうすればよいか   p.85

[guest@icv99 ~]$ ●●●●●●●●●
JK3000,T500,30
JD4000,K300,50
KR4134,Z300,400
[guest@icv99 ~]$


タブとスペースと「,」が混在している場合は expand コマンドでタブをスペースに返還した後で整形すること

[guest@icv31 ~]$ expand table.txt | column -t -s ", "
JK3000  T500  30
JD4000  K300  50
KR4134  Z300  400
[guest@icv31 ~]$

実行コマンドと実行結果をファイル
Question342.txt
に保存して、提出サーバへ送信すること。