我有以下文件
linux$ cat test.txt
toto
titi
tete
tata
将猫的输出保存到变量中会丢弃换行符。linux$ msgs=`cat test.txt`
linux$ echo $msgs
toto titi tete tata
如何使变量中的输出包含换行符?
Shell会对msgs
变量进行拆分,以便echo
指令可以获取多个参数。为防止这种情况发生,您需要对变量进行引用:
echo "$msgs"
我有这个:
echo $(cat myfile.sh) >> destination.sh
这是引起问题的原因,所以我把它改成了:
cat myfile.sh >> destination.sh
那个运行了,哈哈
你可以使用重定向符号“|”
echo | cat test.txt
cat
作为参数传递文件名时,它会忽略标准输入。 - jlliagre