我有两个文件
File1中:
modules
module
controllers
models
views
文件2:
$node_(17) set X_ -0.31
$node_(16) set Y_ 1274.64
ns_ at 1.0 "$node_(17) setdest -0.31 1274.64 0.00"
ns_ at 2.1 "$node_(16) setdest 2041.48 295.29 2.52"
我想在File1中找到(File2的)第一列值,并用相应的第二列值替换它们。例如。 File1中的(17)应替换为(0),(16)和(1)。
输出文件1:
(17) (0)
(16) (1)
我该怎么做?感谢
答案 0 :(得分:2)
使用GNU sed:
sed -f <(sed 's/\((.*)\) \((.*)\)/s|\1|\2|/' file2) file1
输出:
$node_(0) set X_ -0.31 $node_(1) set Y_ 1274.64 ns_ at 1.0 "$node_(0) setdest -0.31 1274.64 0.00" ns_ at 2.1 "$node_(1) setdest 2041.48 295.29 2.52"
如果您想“就地”编辑file1,请添加sed的选项-i
。