テーブルからファイルを生成する必要があります。 sedを使用してデータを転送しています。テーブル列にスペースがある場合は、テキスト修飾子を使用したいと思います。
入力サンプル
Unites State | California | UNIX | ABC DE
期待される出力
"Unites State" | California | UNIX | "ABC DE"
ベストアンサー1
$ echo 'Unites State | California | UNIX | ABC DE' | sed -E 's/([^ |]+ +[^|]+)( +\||$)/"\1"\2/g'
"Unites State" | California | UNIX | "ABC DE"
- 前には常にスペースがあるとします。
|
-E
EREを使用し、一部のsed
バージョンでは-r
([^ |]+ +[^|]+)
空白なし、|
文字なし、少なくとも1つの空白、次の|
文字なし( +\||$)
上記のパターンの後には少なくとも1つのスペースがあり、次の行の|
終わりが続きます。"\1"\2
リクエストに応じて見積もり