我想在当前文件夹及其子文件夹中查找所有符合模式(
现在,我不想插入“blah”,而是想插入一块文本。这个文本存储在一个文件中,它可以被暂时地存储在bash变量中,或者以某种路径或文件的形式读入
cs*.dat3
)的文件,并将一个文本块插入到给定行,可以从文件或bash变量中获取。也可以在文件中匹配模式后插入文本块,而不是在给定行之后。PRESSURE_RELIEF_PANELS
EXIT PRESSURE_RELIEF_PANELS
所以这些内容会被重复放置两次。幸运的是,第一个PRESSURE_RELIEF_PANELS
总是在第32行,因此可以利用它。我目前的做法是:
find . -name cs*.dat3 -exec sed '33iblah' {} \;
输出
PRESSURE_RELIEF_PANELS
blah
EXIT PRESSURE_RELIEF_PANELS
现在,我不想插入“blah”,而是想插入一块文本。这个文本存储在一个文件中,它可以被暂时地存储在bash变量中,或者以某种路径或文件的形式读入
sed
中。因为我无法将sed
的插入语句(i
)与文件名语句(r
)结合起来,所以我一直没有找到一个好的解决方案。有人能帮忙吗?
find . -name cs*.dat3 -exec sed -i '33r../text.dat' {} \;
。 - Krøllebølle