J'aimerais avoir un script qui effectue des migrations automatisées de sites Web d'un autre peut append à ajouter au fichier /etc/httpd/conf.d/vhosts.conf.
Cependant, lorsque j'essaie d'utiliser ECHO pour apporter une chaîne à la fin du fichier, je reçois ceci:
$ Sudo echo "Include thing" >> /etc/httpd/conf.d/vhosts.conf
-bash: /etc/httpd/conf.d/vhosts.conf: Permission denied
et pourtant je peux vi /etc/httpd/conf.d/vhosts.conf, ajouter la ligne et: wq le fichier pour enregistrer et le fermer.
Qu'est-ce que je rate?
Sudo élève le processus appelle son appels, il n'élever à aucun des traitements de la coque actuels tels que la redirection, le globe, etc.
La redirection de fichier >> /etc/httpd/conf.d/vhosts.conf
est en cours de traitement par votre courant Shell, qui fonctionne toujours sous vos privilèges actuels.
Vous pouvez essayer quelque chose comme ça.
Sudo bash -c 'echo "Include thing" >> /etc/httpd/conf.d/vhosts.conf'
Ou
echo "Include thing" | Sudo tee -a /etc/httpd/conf.d/vhosts.conf