如何使用awk修改文件?

Leo*_*han 6 bash awk

awk '/<ul>/ {ul++} ul == 6 { getline } 1' /var/www/html/INFOSEC/english/test.html
Run Code Online (Sandbox Code Playgroud)

如果我运行这行代码,shell将无法帮助我修改文件,相反,它只会在shell中输出结果.任何人都可以帮助??? thx

tda*_*ers 12

最简单的解决方案是将输出发送到文件; 您可能希望事先复制该文件,这样您就不必覆盖正在阅读的文件(否则可能会导致意外行为).

cp test.html test.html.orig
awk 'your awk script here' test.html.orig >test.html
# and then optionally remove the copy:
rm test.html.orig
Run Code Online (Sandbox Code Playgroud)

  • 但是,为了使原始文件保持最长时间(以防其他人需要阅读):`awk'...'file> tmpfile && mv tmpfile file` (3认同)
  • 假设是在awk进程中出现问题,它将以非零状态退出,并且"mv"将不会运行. (2认同)