跳到主要內容

gsutil encoding error...

最近協助處理一個Google Cloud Storage的CLI工具遇到中文的問題
在CentOS的環境上,透過gsutil會有無法上傳的問題
狀況如下:

[simonsu@centos6 ~]$ gsutil mb gs://test-centos6-upload
Creating gs://test-centos6-upload/...
[simonsu@centos6 ~]$ vi 中文字母.txt
[simonsu@centos6 ~]$ vi 中文字母.txt
[simonsu@centos6 ~]$ ls -l
total 4
-rw-rw-r--. 1 simonsu simonsu 22 Mar 3 16:31 ????????????.txt
[simonsu@centos6 ~]$ vi 中文字母.txt
[simonsu@centos6 ~]$ mkdir test
[simonsu@centos6 ~]$ mv *.txt test/
[simonsu@centos6 ~]$ gsutil cp -R test/ gs://test-centos6-upload/
Failure: 'ascii' codec can't encode characters in position 5-8: ordinal not in range(128).
[simonsu@centos6 ~]$ gsutil cp -R test/中文字母.txt gs://test-centos6-upload/
Failure: 'ascii' codec can't encode characters in position 5-8: ordinal not in range(128).
[simonsu@centos6 ~]$

在Google Support跟Google Search的協助下
最後終於解決
原來是Linux的Encoding
在修改/etc/sysconfug/i18n為下面內容後

LANG="zh_TW.UTF-8"
LC_CTYPE="zh_TW.UTF-8"
SUPPORTED="zh_TW.UTF-8:zh_TW.BIG5:zh_TW:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"

重新確認參數是否生效(可以使用echo $[變數名稱])
如果上述四個參數都沒問題
原則上就可以看到中文字
gsutil也就可以正常上傳了唷 :D

留言

這個網誌中的熱門文章

透過Google Apps Script結合Google Form做即時郵件通知

體驗過Google Apps Script的功能後,也發現他結合GmailApps的模組 GmailApps的應用可以用在表單填寫完成後,做發信的通知 例如您開立了一個訂購的表單,為了要在第一時間通知商家有訂單進入 就可以直接呼叫Gmail做發信的通知,讓手持Smart Phone的我們可以很快的知道生意上門了! 下面規劃三個function,其中: onCommit():為form commit時候觸發的function,需要掛載於form commit trigger上 jsonArrToTable():目的將json array解析成為一個Table getLastRowTable():目的將整個table的回傳過濾為剩下第一筆(表頭,含有Form的欄位說明)與最後一筆(原則上就是剛剛送出的那一筆表單) 完整程式碼如下: function onCommit(){   var sheet = SpreadsheetApp.getActiveSheet();   var rows = sheet.getDataRange();   var numRows = rows.getNumRows();   var values = rows.getValues();   var content = getLastRowTable(values);   var htmlBody = "Hi Admin: <br/><br/>有訂單拉,檢查一下吧! <br/><br/>" + content + '<br/><br/>Send by Google Apps';   GmailApp.sendEmail(     " your-email-address@gmail.com ",      "Order Confirm Notice",      htmlBody,      {from: ' from-email-...

Share a chrome plugin for manage google cloud platform

好玩意兒報報.... 同事的新作,把Google Project List在Chrome Plugin中! 對一次管理多個專案的人來說,真得超方便的拉! 下載: https://chrome.google.com/webstore/detail/gdclauncher/bicgkglnnilldakpenngnblekooejnpg 使用說明: 1. Use browser url bar to quick search: Type "gdcl" in browser Press "TAB" to start search Type the project id key word then select the search result... 2. Using quick launch bar... You can search by keyword or click project name to go to the project or gae link to go to gae or go to billing page....

Cloud Monitor嚐鮮

GCP上,我們非常想要的一個功能,終於問世.... Cloud Monitor來了!