所以我有一个循环
while read line
do
printf $line"\n"
done < file.txt
这会在新行上打印每一行(如原始文件)。 然而当我做的时候
while read line
do
printf $line
done < file.txt
当我希望它将所有的线放在一起时,它不会打印任何东西。
(有关额外信息:我只是看到循环是如何工作的,因为我在每一行都有一个数字文件,我想对每个数字应用相同的操作然后总结它们)
答案 0 :(得分:1)
printf记录如下:
1.1e+10
第一个参数(即你的case.txt中每一行的第一个单词)被解释为一个格式字符串,因此它没有按照你的预期进行操作。你需要
SYNOPSIS
printf format [arguments ...]
答案 1 :(得分:-1)
我认为它打印,但你没有看到它。
如果这是您的程序中打印的所有内容,则最终输出(可能很长)行,但没有尾随换行符。现在,回到你的shell,shell显示它的提示。可能,此提示会从您的终端中删除您刚刚打印的行。
要验证它,请将标准输出重定向到文件,然后使用less
或wc
或od
等工具查看文件内容。