在 shell 中工作我想在我的文本文件(表)中获取“replace_me”的所有实例,并将其替换为另一个文件(标记)中的值,在列表中递增地工作。
即,表中“replace_me”的第一个实例将被标记中的“replaced_1”替换,第二个被“replaced_2”替换,直到列表用完。
环顾其他答案,我认为它必须像嵌套循环(for,然后 if),沿着这些思路,但我不知道如何使它真正起作用,并逐渐向下移动“标记”列表。
#!/bin/bash
fileReplace='markers'
fileChange='table'
linesreplace=`cat $fileReplace`
lineschange=`cat $fileChange`
for line in $lineschange ; do
if $linechange = "replace_me"
sed "s/{$lineschange}/{$linesreplace}/g"
else
done
我确信这是基本的,因此非常欢迎指向正确方向的指针或示例。