13

eg_ で始まる名前のファイルをいくつか取得しました。それぞれに1行のみが含まれます

eg_01.txt: @中国:129.00

eg_02.txt @uk:219.98

eg_03.txt @USA:341.90

……

@china:129.00@uk:219.98@USA:341.90 のような URL で送信するために、それらを 1 行にまとめることを期待しています。

私はエコーを使いますcat eg_*

出力は文字列のように見えますが、実際には改行が含まれています: "@china:129.00

@uk:219.98 @USA:341.90"

新しい行とスペースさえも期待して取り除くその文字列を作成できる他の方法はありますか? これを行うには猫だけで十分ですか?

前もって感謝します

4

3 に答える 3

23

あなたはいつでもそれをパイプすることができますtr

tr "\n" " "

これにより、すべての改行が削除されstdin、スペースに置き換えられます

EDIT : Bart Sas が提案したように、改行を削除することもできますtr -d

tr -d "\n"

(注: 2 番目の引数に空の文字列を指定するだけでtrは機能しません)

于 2010-10-14T19:22:12.273 に答える
2

コマンドを 1 つだけ使用する

url=$(awk '{printf "%s",$0}' eg*)
于 2010-10-14T23:56:51.850 に答える
1

Perlでは、次のようにします。

perl -pe'chomp' eg*.txt

-p入力ファイルをループして、-eスイッチで指定されたコードを実行しますchomp。Perlでは「末尾の改行を削除してください」と表示されます。

于 2010-10-15T00:05:31.787 に答える