当我将数字打印到文件中时,会出现奇怪的字符(bash shell)



我在script.sh中有这一行

printf "%d" "$endMS_line"

$endMS_line是一个数字。我用

得到那个数字
endMS_line=`cat file | awk '{if($1=='"$variable"') print NR}'`

输入

打印
printf "%d" "$endMS_line"

echo $endMS_line

所以在标准输出中一切都工作得很好。问题是当我想将该数字保存到文件中时(因为我想在另一个脚本中使用结果,可能有比写文件然后从文件中读取数字等更聪明的方法)

但现在我正在努力做到这一点。如何?我把它写在标准输出中。

myscript.sh inputs > file.txt

但是当我试图查看文件时(当我打开文件时),我看到的结果加上奇怪的字符

[H[2J867

本例中正确的数字是867。有人知道我该怎么解决这个问题吗?谢谢你!

在脚本的开头,我有这样的命令:

clear

删除它并使用:

echo "$endMS_line"

然后在标准输出中:

myscript.sh input > file.txt

完美工作。

最新更新