1

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 です。これを修正する方法を知っている人はいますか? ありがとうございました!

4

1 に答える 1

0

スクリプトの最初に、次のコマンドがありました。

clear

それを削除して使用:

echo "$endMS_line"

次に、標準出力で:

myscript.sh input > file.txt

完璧に動作します。

于 2013-04-17T12:38:38.207 に答える