2016-07-25 1 views
1

Я настраиваю стек веб-сервисов Amazon, и я хотел бы настроить корневой каталог документа в файле /etc/apache2/sites-enabled/000-default.conf, который я сейчас выполняю, изменяя документа DocumentRoot. Затем я отражу это изменение в файле /etc/apache2/apache2.conf. Можно ли внести эти изменения в командные строки, а не открывать и редактировать файлы? Заранее спасибо.Изменение кортежа документов с помощью команд командной строки

+0

Да, вы должны использовать редактор командной строки для редактирования файла типа "nano" – error2007s

ответ

0

Вы можете сделать это с помощью sed. Я использую следующую функцию обертку, чтобы сделать его более удобным:

replace_string() { 
    while :; do 
     case $1 in 
       file=?*) local file=${1#*=} ;; 
      replace=?*) local replace=${1#*=} ;; 
       with=?*) local with=${1#*=} ;; 
        *) break     ;; 
     esac 
     shift 
    done 

    sudo sed -i -- "s/$replace/$with/ig" $file 
} 

replace_string file='/etc/apache2/sites-enabled/000-default.conf' \ 
       replace='.*DocumentRoot.*' \ 
        with='DocumentRoot path-to-your-document-root' 


replace_string file='/etc/apache2/apache2.conf' \ 
       replace='.*DocumentRoot.*' \ 
        with='DocumentRoot "path-to-your-document-root"' 

виду, что пользователь, запускающий этот скрипт должен быть способен использовать Sudo без пароля.