除非是字符串的一部分,否则将bash echo换行到文件

时间:2015-10-13 17:16:22

标签: bash sed newline

我想将两个文件连接到第三个文件,但保留换行符。为此,我使用

FILE1=$(cat /path/file1)
FILE2=$(cat /path/file2)
FILE3="$FILE1 \n $FILE2"
echo -e $FILE3 > /path/to/file

但是,其中一个文件,我有一个包含字符串sed的{​​{1}}操作。在创建第三个文件时,我不希望将此特定\\n字符构成为换行符。

我该怎么办?

1 个答案:

答案 0 :(得分:1)

我不知道你为什么要把文件内容简单地变成变量。

有什么问题
cat /path/file1 /path/file2 > /path/to/file

如果您需要将FILE1和FILE2变量用于其他目的,请避免使用FILE3

echo "$FILE1
$FILE2" > /path/to/file

printf "%s\n" "$FILE1" "$FILE2" > /path/to/file

cat <<END_CONCAT > /path/to/file
$FILE1
$FILE2
END_CONCAT