马车返回bash上的文件



我试图将回波重定向到文件,但回车(\r(被插入为^m。这是我正在使用的命令

echo -e "<VirtualHost *:80>
r  DocumentRoot /var/www/html
r  ServerName site
r  ServerAlias site
r  ErrorLog "/var/log/apache2/html-error.log"
r  LogFormat "%t<>%u<>%h<>%O<>%T<>%>s<>%{Referer}i<>%r<>%{User-Agent}i" combined
r  CustomLog "/var/log/apache2/html-access.log" combined
r  RewriteEngine on
r  RewriteCond %{SERVER_NAME} =site
r  RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
r</VirtualHost>n" > teste.txt

这就是它在文件中的样子:

<VirtualHost *:80>
^M  DocumentRoot /var/www/webapp
^M  ServerName iqnus.bvloja.com
^M  ServerAlias iqnus.bvloja.com
^M  ErrorLog "/var/log/apache2/webapp-error.log"
^M  LogFormat "%t<>%u<>%h<>%O<>%T<>%>s<>%{Referer}i<>%r<>%{User-Agent}i" combined
^M  CustomLog "/var/log/apache2/webapp-access.log" combined
^M  RewriteEngine on
^M  RewriteCond %{SERVER_NAME} =iqnus.bvloja.com
^M  RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
^M</VirtualHost>

您可能正在查找n而不是r。非Windows机器上的新行将仅为n,或者如果您在Windows上,则为rn

-e标志可以解释反斜杠转义。只需使用echo而不是echo-e。

最新更新