我想替换下面文本文件中的ID值。现在是1到200。我希望它从201到400。
test.txt
paraCR="0566 and 0675" ID="1"
paraCR="0566 and 0675" ID="2"
.
.
paraCR="0566 and 0675" ID="200"
我尝试使用以下脚本,但无法正常工作。
#!/bin/bash
for (( i=1,k=201; i<=200; i++,k++ ))
do
find . -type f -name "test.txt" -exec sed -i'' -e 's/i/k/g' {} +
done
最佳答案
在这里,您有一种不使用for
的方法:
i=201
while read line
do
echo $line | sed -s "s/ID\=\"[0-9]*\"/ID\=\"$i\"/g" >> new_file
i=$(( $i + 1))
done < test.txt
mv new_file test.txt