在下面给出的示例中,我在 todel.txt 文件中期待 $a=b 行。如何按原样添加此处的文档文本块而不进行处理?
[root@localhost]# cat here_example.sh
#!/bin/sh
cat > todel.txt << heredoc
<?php
$a=b
# this is comment
?>
heredoc
[root@localhost]# cat todel.txt
<?php
=b
# this is comment
?>
在“heredoc”周围加上引号:
#!/bin/sh
cat > todel.txt << "heredoc"
<?php
$a=b
# this is comment
?>
heredoc
从bash(1)
手册页:
如果引用了 in 中的任何字符
word
,则delimiter
是删除 on 引号的结果word
,并且 here-document 中的行不展开。
#!/bin/sh
cat > todel.txt << "heredoc"
<?php
$a=b
# this is comment
?>
heredoc