0
我正在嘗試使用s3cmd命令行從S3下載文件。該文件具有像(楽曲満載アプリ!!最新曲から懐かしの曲,気になるあの曲も検ききる)等外文字符。但是當我在我的Ubuntu機器上下載這個文件並使用vi命令打開文件時,這些字符被替換爲(??????)。我不確定爲什麼會發生這個問題。任何幫助/建議將不勝感激。提前致謝。使用s3cmd從s3下載的外來字符文件即將到來?
我正在嘗試使用s3cmd命令行從S3下載文件。該文件具有像(楽曲満載アプリ!!最新曲から懐かしの曲,気になるあの曲も検ききる)等外文字符。但是當我在我的Ubuntu機器上下載這個文件並使用vi命令打開文件時,這些字符被替換爲(??????)。我不確定爲什麼會發生這個問題。任何幫助/建議將不勝感激。提前致謝。使用s3cmd從s3下載的外來字符文件即將到來?
我終於解決了這個問題。張貼在這裏,以便它可以幫助未來的人。根據Will提供的有關ubuntu終端設置的提示,我調查了機器的語言環境。我看到的語言環境是en_US。要查看默認語言環境,請在終端中輸入語言環境。
** PS如果你想要的語言環境不可用,請點擊此鏈接安裝的語言環境
$ sudo locale-gen "en_IN"
Generating locales...
en_IN... done
Generation complete.
$ sudo dpkg-reconfigure locales
Generating locales...
en_IN... up-to-date
Generation complete.
** 在我的情況下,區域是像
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE=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=
我文件正常打開的系統的語言環境
這是類似於
LANG=en_IN
LANGUAGE=en_IN:en
LC_CTYPE="en_IN"
LC_NUMERIC="en_IN"
LC_TIME="en_IN"
LC_COLLATE="en_IN"
LC_MONETARY="en_IN"
LC_MESSAGES="en_IN"
LC_PAPER="en_IN"
LC_NAME="en_IN"
LC_ADDRESS="en_IN"
LC_TELEPHONE="en_IN"
LC_MEASUREMENT="en_IN"
LC_IDENTIFICATION="en_IN"
LC_ALL=
我所做的就是,我通過使用命令
sudo vi /etc/default/locale
打開區域文件,並替換的文件與
LANG=en_IN
LANGUAGE=en_IN:en
LC_CTYPE="en_IN"
LC_NUMERIC="en_IN"
LC_TIME="en_IN"
LC_COLLATE="en_IN"
LC_MONETARY="en_IN"
LC_MESSAGES="en_IN"
LC_PAPER="en_IN"
LC_NAME="en_IN"
LC_ADDRESS="en_IN"
LC_TELEPHONE="en_IN"
LC_MEASUREMENT="en_IN"
LC_IDENTIFICATION="en_IN"
LC_ALL=
內容做出這種改變,我重新啓動機器後現在我打開文件和baammmm。漢字如預期顯示。謝謝@Will的提示和this鏈接讓我的一天:)
哪裏被替換的字符,使用哪個應用程序(更重要的是哪個字體?) –
文件中的字符正在被替換。我使用終端在ubuntu下載了該文件。我不確定字體。但我看到的一個發現是,我試圖在我的Mac機器上下載該文件,並按預期顯示字符。我也在不同的Ubuntu機器上嘗試過,甚至在那裏文本正在按預期發佈。 –
檢查MIME類型是否設置爲「text/html; charset = utf-8」這裏有一些如何使用aws cli執行此操作的示例:https://github.com/aws/aws-cli/issues/1346 - 同時仔細檢查文件上傳到s3時沒有被破壞 – Will