我有这个 sed & find 命令
find /home/www/ -name footer.php -exec sed -i 's/<\/body>/testmoe\n<\/body>/'
Run Code Online (Sandbox Code Playgroud)
我需要用 file.txt 中的数据替换 testmoe 所以它会是,
find /home/www/ -name footer.php -exec sed -i 's/<\/body>/file.txt\n<\/body>/'
Run Code Online (Sandbox Code Playgroud)
任何纠正我的命令的建议
Edu*_*nec 11
为了稍微改进@Iain 的回答,我认为您可以像这样一次通过:
#!/bin/sh
sed -i '/<\/body/ {
r /path/to/file
a </body>
d
}' $1
Run Code Online (Sandbox Code Playgroud)
这将搜索</body>,将文件插入缓冲区,附加</body>到缓冲区,然后删除原始</body>,正如 Iain 正确指出的那样无法移动。