Bash脚本,将特殊字符写入文件

时间:2014-08-21 09:04:46

标签: bash scripting echo

我想写一些有价值的文件变量:

#include "..\..\cfg\plot.es"

我正在使用:

echo "$var" >> "file.txt"

变量$ var从文件中获取:

while read var; do

    if [[ "$p" =~ "CONFIGURATION" ]]
    then
        echo 'sth' >> $te
    else
        echo $var >> $te
    fi
done < $out_file

但结果我得到了

#include "....cfgplot.es"

如何解决这个问题而不是对每个角色进行搜索?

1 个答案:

答案 0 :(得分:1)

您需要-r的{​​{1}}选项:

read

来自手册:http://www.gnu.org/software/bash/manual/bashref.html#index-read

  

-r

     
    

如果给出此选项,则反斜杠不会充当转义字符。反斜杠被认为是该行的一部分。特别是,反斜杠 - 换行符对不能用作续行。

  

当你使用它时必须引用变量:

while read -r var; do ...