我正在调试 shell 脚本并尝试找出以下命令执行的任务:
sed -i '1,+999d' /home/org_user/data.txt
我需要更改此命令,因为它失败并出现以下错误:
illegal option sed -i
但在更改之前,我需要了解 BAU 的功能。
感谢这方面的任何投入。
其适用用途如下。假设您有以下文件file.txt
:
1, 2, 6, 7, "p"
我们想用 0 替换“p”。
sed 's/"p"/0/g' file.txt
使用上面的代码只需将输出打印到命令行中。
您可能会想为什么不直接将该文本重定向回文件中,如下所示:
sed 's/"p"/0/g' file.txt > file.txt
不幸的是因为重定向的本质 https://unix.stackexchange.com/a/186126/16792上面只会产生一个空白文件。
相反,必须为输出创建一个临时文件,该文件稍后会覆盖原始文件,如下所示:
sed 's/"p"/0/g' file.txt > tmp.txt && mv tmp.txt file.txt
与执行上面的长解决方法不同,使用 -i 的 sed edit in place 选项可以使用更简单的命令:
sed -i 's/"p"/0/g' file.txt
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)