Создать файл с содержимым из оболочки script Как я в оболочке script создаю файл с именем foo.conf и заставляю его содержать: NameVirtualHost 127.0.0.1 # Default <VirtualHost 127.0.0.1> ServerName localhost DocumentRoot "C:/wamp/www" </VirtualHost> Ответ 1 Используйте "здесь документ": cat > foo.conf << EOF NameVirtualHost 127.0.0.1 # Default <VirtualHost 127.0.0.1> ServerName localhost DocumentRoot "C:/wamp/www" </VirtualHost> EOF Ответ 2 Вы можете сделать это с помощью echo: echo 'NameVirtualHost 127.0.0.1 # Default <VirtualHost 127.0.0.1> ServerName localhost DocumentRoot "C:/wamp/www" </VirtualHost>' > foo.conf Все, заключенные в одинарные кавычки, интерпретируются как литералы, поэтому вы просто записываете этот блок в файл с именем foo.conf. Если он не существует, он будет создан. Если он существует, он будет перезаписан. Ответ 3 heredoc может быть самым простым способом: cat <<END >foo.conf NameVirtualHost 127.0.0.1 # Default <VirtualHost 127.0.0.1> ServerName localhost DocumentRoot "C:/wamp/www" </VirtualHost> END Ответ 4 Этот код лучше всего подходит для меня: sudo dd of=foo.conf << EOF <VirtualHost *:80> ServerName localhost DocumentRoot /var/www/localhost </VirtualHost> EOF Это был единственный, который я мог использовать с sudo из коробки!
Ответ 1 Используйте "здесь документ": cat > foo.conf << EOF NameVirtualHost 127.0.0.1 # Default <VirtualHost 127.0.0.1> ServerName localhost DocumentRoot "C:/wamp/www" </VirtualHost> EOF
Ответ 2 Вы можете сделать это с помощью echo: echo 'NameVirtualHost 127.0.0.1 # Default <VirtualHost 127.0.0.1> ServerName localhost DocumentRoot "C:/wamp/www" </VirtualHost>' > foo.conf Все, заключенные в одинарные кавычки, интерпретируются как литералы, поэтому вы просто записываете этот блок в файл с именем foo.conf. Если он не существует, он будет создан. Если он существует, он будет перезаписан.
Ответ 3 heredoc может быть самым простым способом: cat <<END >foo.conf NameVirtualHost 127.0.0.1 # Default <VirtualHost 127.0.0.1> ServerName localhost DocumentRoot "C:/wamp/www" </VirtualHost> END
Ответ 4 Этот код лучше всего подходит для меня: sudo dd of=foo.conf << EOF <VirtualHost *:80> ServerName localhost DocumentRoot /var/www/localhost </VirtualHost> EOF Это был единственный, который я мог использовать с sudo из коробки!