2

このコマンドを実行すると:

traceroute -p 80 www.google.com. 2>&1|tee -a ~/tmp/traceroute.log

端末のコンテンツとファイルのコンテンツは同じで、クリーンです (特殊文字は含まれていません)。

ただし、このコマンドを実行すると:

watch -n5 "traceroute -p 80 www.google.com." 2>&1|tee -a ~/tmp/watch.log

ターミナルにこれが表示されます:

Every 5.0s: traceroute -p 80 www.google.com.            Fri Jan 18 11:27:41 2013

traceroute to www.google.com. (74.125.237.115), 30 hops max, 60 byte packets
 1  10.0.0.1 (10.0.0.1)  3.138 ms  3.351 ms  3.349 ms
 2  192.168.1.254 (192.168.1.254)  5.832 ms  6.043 ms  6.183 ms
 3  lback9.comcen.com.au (203.23.236.9)  31.569 ms  31.949 ms  33.484 ms
 4  core-syd-lns2.comcen.com.au (203.23.236.45)  48.331 ms  48.484 ms  48.720 ms
 5  * * *`

これはログファイルに記録されます(SEコードの解析/表示は以下でチョークします):

(B)0[?1049h[1;24r[m[4l[H[JEvery 5.0s: traceroute -p 80 www.google.com.[1;57HFri Jan 18 11:27:41 2013[3;1Htraceroute to www.google.com. (74.125.237.115), 30 hops max, 60 byte packets
[1B 1  10.0.0.1 (10.0.0.1)  3.138 ms  3.351 ms  3.349 ms

[1B 2 192.168.1.254 (192.168.1.254) 5.832 ミリ秒 6.043 ミリ秒 6.183 ミリ秒 [1B 3 lback9.comcen.com.au (203.23.236.9) 31.569 ミリ秒 31.949 ミリ秒 33.484 ミリ秒 [1B 4 コア-syd-lns2.comcen.com .au (203.23.236.45) 48.331 ミリ秒 48.484 ミリ秒 48.720 ミリ秒[8;2H5 * * * [1B 6 * * *

ロケール設定を確認し、貼り付けました~/.bashrc

~$ locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8

とで~/.bashrc

export LC_ALL="en_US.UTF-8"
export LANG="$LC_ALL"
export LANGUAGE="$LC_ALLL"
export LC_CTYPE="$LC_ALL"
export LC_NUMERIC="$LC_ALL"
export LC_TIME="$LC_ALL"
export LC_COLLATE="$LC_ALL"
export LC_MONETARY="$LC_ALL"
export LC_MESSAGES="$LC_ALL"
export LC_PAPER="$LC_ALL"
export LC_NAME="$LC_ALL"
export LC_ADDRESS="$LC_ALL"
export LC_TELEPHONE="$LC_ALL"
export LC_MEASUREMENT="$LC_ALL"
export LC_IDENTIFICATION="$LC_ALL"

誰がこれを引き起こしているのかについての洞察を持っていますか?

4

1 に答える 1

1

Watch は、新しい情報を表示するたびに画面をクリアします。端末に出力される特殊文字でそれを行います。ファイルでは、これらの文字が完全に解釈されているだけです。実際の混乱を見たい場合は、 --differences の強調表示など、時計の他の機能をいくつかオンにしてみてください。

于 2013-01-18T00:59:37.763 に答える