4

ファイルのデータを変換するスクリプトがあります。より効率的に作業するために、メモリ内のデータを変更してからファイルにダンプしたいと思います。これを含むファイルを変更したいとします。

> This is a line
> this is other line

sedコマンドを使用して、「>」記号を「#」記号に置き換えます。

transform_output=$(eval "sed ${sed_args[@]} $file" 2>&1)
echo -e $transform_output

出力を取得します:

# This is a line # this is other line

私が欲しい出力ではなく、次のとおりです。

# This is a line
# this is other line
  1. 改行を保持したまま出力を文字列変数に保存するにはどうすればよいですか?
  2. 「#ADDEDLINE#」を含む変数の先頭に行を追加してファイルに保存するにはどうすればよいですか?

(取得したいファイルは次のようになります):

#ADDED LINE#
# This is a line
# this is other line

前もって感謝します

4

1 に答える 1

5
  1. 引用符は、空白での単語の分割を防ぐために使用されます。

    echo -e "$transform_output"

  2. コマンドを別のエコーでグループ化します。

    { echo "#ADDED LINE#"; echo -e "$transform_output" } > file

于 2013-01-23T16:30:29.193 に答える