ファイルの複数行を1行に変換すると、二重引用符が失われます。

ファイルの複数行を1行に変換すると、二重引用符が失われます。

これは私のサンプルファイルです。

cat test.txt
"IND WEB",
"Speed Web (Internal webserver)",
"Web Bill",

複数行を1行に変換するために、次の2つの解決策を試しましたが、二重引用符は"ありません!

cat listofapps.txt | xargs -s 8192
IND WEB, Speed Web (Internal webserver), Web Bill,

tr '\n' < listofapps.txt
IND WEB, Speed Web (Internal webserver), Web Bill,

二重引用符を維持するように提案できますか?

ベストアンサー1

xargs二重引用符はxargsユーティリティによって解釈されるため、使用時に失われます(参照:xargsが入力から引用符を削除するのはなぜですか?)。

コマンドtrが破損してエラーメッセージが表示されます。

tr次のように改行文字を削除するには

tr -d '\n' <file

改行をスペースに置き換えるには、次のようにします。

tr '\n' ' ' <file

スペースで行を連結するには:

paste -sd ' ' file

(上記と同じですが、最後に改行文字を追加して有効なテキスト行にします。)

おすすめ記事