如何从命令行修改configuration文件?

例如,我经常需要login到新的虚拟机才能打开“/ etc / ssh / sshd_config”并将“PasswordAuthentication”选项设置为“no”。

这样,我不能自动化这个过程。

如何通过从命令行进行修改来解决类似的任务?

# sed -i -r 's/^#?PasswordAuthentication .*/PasswordAuthentication no/' /etc/ssh/sshd_config 

如果你想整个集中pipe理,你可以看看像Puppet和Chef这样的工具。 人们可以争辩说,这种方式既是疯狂又是救赎。

根据你想要做什么以及你正在处理的机器数量,投资运行一个木偶或者厨师服务器可能就像把一艘航空母舰放在它上面敲击钉子一样。 另一方面,航空母舰可能是你实际需要的,取决于你想要做什么。

sedawkperl是你的朋友。 如果没有,你应该看看他们。 由于configuration文件从软件到软件是不同的,所以不可能有一个通用的解决scheme。 创build自己的解决scheme。