linux - 在大文件中搜索并添加模式

标签 linux perl shell unix awk

我有一个很大的 apache 配置文件,在每个虚拟主机部分,我想添加自己的日志条目。我想知道是否可以使用脚本来完成。

我现在的配置文件是这样的;

ServerName abc.com   
some information.   
…   
……   

我想拥有类似的东西;

ServerName abc.com    
CustomLog "/usr/local/logs/abc.com.log"    
some information.    
…   
……       

是否可以通过某种脚本实现?我有很多很多这样的虚拟主机条目,所以手动更新是不可能的。有什么想法吗?

最佳答案

Sed 将快速完成此工作:

sed 's=^ServerName \(.*\)=&\nCustomLog "/usr/local/logs/\1.log"='

编辑:我之前发过别的东西,然后去测试它,我犯了一个错误。所以我测试了 choroba 的答案,发现它也不太奏效,所以修复它并简化它。

关于linux - 在大文件中搜索并添加模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8926412/

相关文章:

使用 "Set prompt"命令在 C 中创建简单的 shell

c++ - X11:移动窗口时得到通知

Java - 使用 linux 访问远程 Activity 目录

perl - 用 Perl 理解 oAuth

regex - Perl 正则表达式将每个字符捕获为一组

linux - 在 Linux 中列出最小的文件

linux - 如何通过主机名 ping docker 网络中的其他容器?

linux - 如何使用 sshpass 在两台远程计算机之间复制数据?

perl - 如何创建哈希的递归哈希? (无限深)

linux - 如何使用 AWK 重新构造文件?