あるファイルから値を抽出し、別の値を置き換える別のファイルに挿入します。

あるファイルから値を抽出し、別の値を置き換える別のファイルに挿入します。

2つのファイルがあり、対応する行番号は同じではありません。しかし、file1コマンドを使用して引用符付きの行を変更したいと思います。file2sed

存在するfile1

tid.infno := 72
tid.setnr := 120 (This number 120 is wrong and It will be 110)
tid.typeidc := 2
tid.typeidm := 1
writedb
clear

存在するfile2

tid.setnr := 110 (This is correct and I want to place this number in file no. 1)

ベストアンサー1

一方awk通行:

awk 'FNR==NR&&$1=="tid.setnr"{x=$3} NR!=FNR{if($1=="tid.setnr"){$3=x}print}' file2 file1
  • パート1::FNR==NR&&$1=="tid.setnr"{x=$3}実行しfile2て値()を持つ変数が見つかったら検索しますtid.setnrx110
  • パート 2: NR!=FNR{if($1=="tid.setnr"){$3=x}print}: trought file1, search を実行してtid.setnr見つけた場合、3 番目のフィールド ( $3) を別のファイルで見つかった数字に置き換えます。

おすすめ記事