以下の形式のデータがあります。
私の主な問題は、フィールド/列のデータが長すぎるファイルがあることです。
単純に出力を表示すると (コマンド filename.xls|awk -F"|" '{print $1,$2,$3))、見にくく、読むのが非常に複雑になります。として :
....FIELD WIDTH を設定することはできますか???
ありがとう
更新... ghitiとtripleeeに(わかりにくい場合は拡大してください) 入力ファイルはタブ区切りです...
以下の形式のデータがあります。
私の主な問題は、フィールド/列のデータが長すぎるファイルがあることです。
単純に出力を表示すると (コマンド filename.xls|awk -F"|" '{print $1,$2,$3))、見にくく、読むのが非常に複雑になります。として :
....FIELD WIDTH を設定することはできますか???
ありがとう
更新... ghitiとtripleeeに(わかりにくい場合は拡大してください) 入力ファイルはタブ区切りです...
awk の substr() 関数を使用します。例: awk '{print substr($3,0,10)}'
詳細については、 man awkを参照してください。
シェルから、「fmt」コマンドを使用して、いくつかの列でテキストを折り返すことができます。
[ghoti@pc ~]$ text="dfgkjfd vonhsadoi djo asdoi sdojvdjkdo soij dsmioo broingli."
[ghoti@pc ~]$ printf '%30s\n' | tr \ -
------------------------------
[ghoti@pc ~]$ fmt -30 <<<"$text"
dfgkjfd vonhsadoi djo asdoi
sdojvdjkdo soij dsmioo
broingli.
[ghoti@pc ~]$
man fmt
ご使用の環境でコマンド ライン オプションを確認する必要があります。<<<Text
表記はシェルによって使用されるものでbash
あり、必ずしもこのコマンドを使用する方法ではありません。
テーブル内のレイアウトはより複雑で、awk だけでは単純に実行できません。