在这里预处理doc

时间:2011-03-10 07:37:45

标签: heredoc cat shell

在下面给出的例子中,我期待着这条线 $ A = B 在todel.txt文件中。 如何在不处理的情况下添加此处的doc文本块?

[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
?>

2 个答案:

答案 0 :(得分:3)

在“heredoc”周围加上引号:


#!/bin/sh
cat > todel.txt << "heredoc"
<?php
$a=b
# this is comment
?>
heredoc

答案 1 :(得分:1)

来自bash(1)手册页:

  

如果word中有任何字符          引用delimiterword引用删除的结果,而{。}}          此文档中的行未展开。

#!/bin/sh
cat > todel.txt << "heredoc"
<?php
$a=b
# this is comment
?>
heredoc