linux - 查找包含并替换为的行

标签 linux perl bash sed grep

最简单的方法是什么:

在文本文件中查找包含以下内容的行

listen = /var/run/php5-fpm.sock

并将该行替换为

listen = 127.0.0.1:9000

最佳答案

perl -i~ -pe 's|^\s*listen\s*=\s*\K /var/run/php5-fpm\.sock|127.0.0.1:9000|x' file

匹配listen = /var/run/php5-fpm.sock与大量空格对齐,但仅替换 /var/run/php5-fpm.sock到期部分\K正面向后看(同 (?<=..) )

关于linux - 查找包含并替换为的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24257453/

相关文章:

perl - 如何检索通过 SNMP 接收到的发送字节

arrays - bash:意外的数组成员句柄

linux - ( Node )达到最大文件限制?

C++ - 谷歌protobuf

linux - 如何从 awk 中的变量中修剪空格?

bash - 如何在其他目录中扩展 bash 补全?

bash - 子shell中使用的"basename"返回"command not found"

linux - 共享库如何被不同的进程共享?

perl - 使用 pod2html 生成带有自定义文本的 http 链接的正确语法是什么?

perl - 为什么我使用 Perl 的 LWP 下载图像时会得到大小错误的文件?