0

次のようなデータを含むファイル values.properties があります。

$ABC=10
$XYZ=20

上記のファイルから各要素を1つずつ取得するシェルスクリプトを作成したいと思います。

$ABC と言って、ファイル ABC.txt に移動し、$ABC の値を 10 に置き換えます。同様に、ファイル XYZ.txt に移動し、$XYZ を 20 に置き換えます。

4

1 に答える 1

0

これはおそらく Unix と Linux のセクションにあるはずだと思います。私が一緒にハッキングした解決策は次のとおりです。

cat values.properties  | grep "=" | cut -d "$" -f2 | awk -F "=" '{print "s/$"$1"/"$2"/g "$1".txt"}' | xargs -n2 sed -i

流れは次のようになります。

  1. 次の方法ですべての値の割り当てを除外します: grep "="
  2. 次の方法で「$」を削除します: cut -d "$" -f2
  3. awk を使用して変数名と値を分割し、sed 置換コマンドを作成します
  4. xargs を使用して、xargs -n2 経由で置換パラメーターとターゲット ファイルを取り込みます。
  5. 最後に xargs へのコマンドとして sed を渡します: xargs -n2 sed
于 2012-10-09T11:19:36.593 に答える