私のデータは次のとおりです。例:
454|12 13 |人民電話(チャイナモバイル香港)|0.0118
454|06 15 17 |SmarTone モバイルコミュニケーション(P Plus)|0.0412
私はUnix / Linuxに初めて触れました。次のようにデータを入力できるコマンドがあるかどうかを知りたいです。
45412 |人民電話(チャイナモバイル香港)|
0.0118
45406 | SmarToneモバイルコミュニケーション
(P Plus)
|通信(Pプラス)|0.0412
gawk コマンドを使用して最初の部分を印刷します。
(あまりにも「BEGIN{FS="|"}{print $1}」
しかし、すべての突破口との接続に失敗しました。あなたの助けが必要です。
答え1
gawk 'BEGIN{FS="|"}{n=split($2,a," "); for (i = 1; i <=n ; i++) printf "%s%s|%s|%s\n", $1,a[i],$3,$4;}'