歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

linux wget下載進度條變成多行顯示的解決方法

在之前為了 解決Putty客戶端連接到CentOS之後顯示亂碼 的問題,設置了 LANG=zh_CN.UTF-8 之後,在使用wget下載的時候,wget下載進度條異常,竟然不能在一行顯示了,變成了坑爹的多行顯示,每一個周期wget自動會產生新的一行,結果下載進度慢點的文件,不用一會兒整個屏幕就全是wget進度條的天下了。


復制代碼代碼如下:
wget 的進度條變成了悲催的屏幕殺手,滿屏幕都是下面這樣的...(=號省略無數個)</p> <p>99% [==========================================> ] 10,416,337 6.09K/s eta(英國中部時
99% [==========================================> ] 10,419,241 6.10K/s eta(英國中部時
99% [==========================================> ] 10,419,241 5.73K/s eta(英國中部時
99% [==========================================> ] 10,425,049 5.79K/s eta(英國中部時
99% [==========================================> ] 10,427,953 5.65K/s eta(英國中部時
100%[===========================================>] 10,431,288 5.65K/s in 27m 12s

這和原來的一行顯示進度條的節奏完全不同啊。後面才發現這是因為翻譯的時候,eta被轉成eta(英國中部時間),導致整個輸出太長,引起了斷行,導致下次輸出必須從新行開始。

再後來,發現網上也有很多人出現這個問題,關鍵是,這個問題從很早之前就一直存在,修改起來倒還是挺快的。


復制代碼代碼如下:
#注意文件路徑是在:/usr/share/locale/zh_CN/LC_MESSAGES/</p> <p>cd /usr/share/locale/zh_CN/LC_MESSAGES/
#先重命名
mv wget.mo wget.mo.bak
#從重命名後的文件裡替換eta(英國中部時間)為ETA,並導出新文件
msgunfmt wget.mo.bak -o - | sed 's/eta(英國中部時間)/ETA/' | msgfmt - -o wget.mo

TIPs:

1. 如果沒有msgunfmt 和msgfmt,請安裝 gettext(沒有直接找到安裝msgunfmt和msgfmt的方式) 。

2. 以上命令本人是在root用戶下操作

Copyright © Linux教程網 All Rights Reserved