我想更改我的apache2 web服务器的默认Web根文件夹,但是通过我正在制作的脚本的命令行。
我知道通过nano / vim进行操作,然后转到该行并手动更改它,但我想通过命令行来实现。
我想过类似的东西(语法错误 - 我知道 - 只是为了说明我的观点):
vim /etc/apache2/sites-enabled/000-default.conf | find 'DocumentRoot /var/www' | replace 'DocumentRoot /var/www/myFolder'
也许不是与vim而是其他?任何的想法 ?
谢谢
使用带有参数-i
的sed。
sed -i 's-/var/www-&/MyFolder-' /etc/apache2/sites-enabled/000-default.conf
参数-i
支持就地编辑。
你应该使用sed
和substitute命令进行那种操作。
http://www.grymoire.com/Unix/Sed.html#uh-0
我手头没有unix机器但是这样的东西应该可以工作(使用#而不是通常的/作为分隔符):
sed 's#/var/www#/var/www/MyFolder#' /etc/apache2/sites-enabled/000-default.conf
即使这不是你的问题,因为你的初始问题提到了Vim,你也可以使用Vim内部的替代品
喜欢
:%s #/var/war#/var/www/MyFolder#g
% means search in the whole file
g means globally : it will replace multiple instance if the string is found multiple times