1. linux下的含中文的文件名亂碼問題:1.我的linux(ubuntu10.04)系統裡面發現很多文件名亂碼
安裝中文語言包
2. 有人會使用linux腳本發送郵件嗎
1、編輯用戶Home目錄下的.muttrc文件,設置發信環境。
復制代碼代碼如下:
# cat /root/.muttrc
set envelope_from=yes
set [email protected]
set realname="Owinux"
set use_from=yes
set rfc2047_parameters=yes
set charset="utf-8"
2、發信腳本
復制代碼代碼如下:
# cat automail.sh
#!/bin/sh
# automail.sh
DIR=/root/owinux
mailcontent=$DIR/mailcontent
> "$mailcontent"
echo -e "owinux,您好!\n" >> $mailcontent
echo -e "\t附件為 `date +%Y-%m-%d` 設備日檢報告,敬請查收。" >> $mailcontent
cat mailcontent | /usr/bin/mutt -s "設備日檢報告" -a /root/owinux/report.xls [email protected] -c [email protected] -c [email protected]
3、簡要說明:
-s:指定主題
-a:附件
-c:抄送,需要抄送多人的話,須使用多個 -c 選項
使用上面的發信環境可以保證在頁面查看郵件的時候,附件名不出現亂碼。
其中 .muttrc 的 "set from"可以隨便設置,可以是不存在的郵箱地址,當然正確的最好。
比如:
復制代碼代碼如下:
set [email protected]
不過也並不是你設置的正確的郵箱地址就一定能發送成功。
復制代碼代碼如下:
set [email protected]
我新注冊了一個 [email protected],然後將 set from 設置為[email protected],就沒有成功。
原因在於126郵箱報了 550 MI:SPF 錯誤,連接到126 企業退信的常見問題? 發現
復制代碼代碼如下:
550 MI:SPF 發信IP未被發送域的SPF許可。
3. linux mail 發送出去的中文信息 變成亂碼 怎麼解決 高手 help
localhost (或 Cwlocalhost.localdomain)
改成
Cwmailtest.com
重啟sendmail
或者
在 /etc/mail/local-host-names 加上mailtest.com
或者
在
/etc/sendmail.cw 加 mailtest.com
不同的sendmail版本,有不同的配置。如果上面還不行,得自己去研究如何在sendmail.mc 里邊修改MASQUERADE_AS
4. 文件在linux顯示亂碼怎麼解決
linux下經常遇到的編碼問題如果你需要在Linux中操作windows下的文件,那麼你可能會經常遇到文件編碼轉換的問題。Windows中默認的文件格式是GBK(gb2312),而Linux一般都是UTF-8。
查看編碼的方法
方法一:file filename
方法二:在Vim中可以直接查看文件編碼
:set fileencoding
如果你只是想查看其它編碼格式的文件或者想解決用Vim查看文件亂碼的問題,那麼你可以在
~/.vimrc 文件中添加以下內容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
這樣,就可以讓vim自動識別文件編碼(可以自動識別UTF-8或者GBK編碼的文件),其實就是依照fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ASCII)編碼打開
文件編碼轉換
多方法:
iconv 提供標準的程序和API來進行編碼轉換;
convert_encoding.py 基於Python的文本文件轉換工具;
decodeh.py 提供演算法和模塊來談測字元的編碼;
linux下文件編碼轉換:
方法一:
在Vim中直接進行轉換文件編碼,比如將一個文件轉換成utf-8格式
:set fileencoding=utf-8
或者
11)設置文件集合,即要對哪些文件進行操作,可以使用通配符,比如我通常是對 C/C++ 源程序進行編碼轉換
:args *.h *.cpp
2)給出要在每個文件上執行的命令,這里是轉換編碼:
:argdo set fenc=utf-8 | update
方法二:
iconv 轉換
5.案例:
假如說我們將windows下的一個UTF-8的文件傳到linux環境下,linux環境下的系統編碼是GB18030,我們cat的時候就會出現亂碼,這個時候就應該想到轉碼了,下面我們來進行試驗:
我們將windows下一個名為UTF-8.sh的文件傳到linux系統中,其中UTF-8.sh的內容如下:
我是中文編碼UTF-8模式~
而linux系統的系統語言設置為:
[root@sor-sys zy]# cat /etc/sysconfig/i18n
LANG=zh_CN.GB18030
SYSFONT="latarcyrheb-sun16"
這個時候查看一下文件的內容及編碼:
[root@sor-sys zy]# file UTF-8.sh
UTF-8.sh: UTF-8 Unicode text, with no line terminators
[root@sor-sys zy]# cat UTF-8.sh
鍩挎垜鏄?腑鏂囩紪鐮乁TF-8妯″紡~[root@sor-sys zy]#
[root@sor-sys zy]#
這個時候我們就需要轉換編碼了,記得使用iconv
[root@sor-sys zy]# iconv -f UTF-8 -t GB18030 UTF-8.sh -o GB18030.sh
[root@sor-sys zy]# cat GB18030.sh
??我是中文編碼UTF-8模式~[root@sor-sys zy]#
[root@sor-sys zy]# file GB18030.sh
GB18030.sh: Non-ISO extended-ASCII text, with no line terminators
[root@sor-sys zy]#
convmv就是更改文件名編碼方式的一個工具。
比如
sudo convmv -f gbk -t utf-8 -r –notest /home
就是將/home目錄下原來文件名是gbk編碼方式的全部改為utf-8格式的。這里 -f 後面為原來的編碼方式,-t 後面是要更改為的編碼方式, -r 表示這個目錄下面的所有文件, –notest 表示馬上執行,而不是僅僅測試而已。另外這命令好像要root才能執行,因此要加上 sudo。
5. linux系統 文件夾名稱為亂碼如解決
因為你的文件名可能是中文,就會顯示亂碼,或者以堆的問號 亂碼分兩種情況回: 1.終端(純答shell界面)的亂碼 vi /etc/profile export LC_ALL="zh_CN.GB18030:zh_CN.GB2312:zh_CN.GBK:zh_CN:en_US.UTF-8:en_US:en:zh:zh_TW:zh_CN.BIG5" 保存退出,reboot系統即可.. 2.X-window(圖形界面)的亂碼 vi /etc/sysconfig/i18n LANG="zh_CN.GB18030:zh_CN.GB2312:zh_CN.GBK:zh_CN:en_US.UTF8:en_US:en:zh:zh_TW:zh_CN.BIG5" LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN.GBK:zh_CN:en_US.UTF8:en_US:en:zh:zh_TW:zh_CN.BIG5" 保存reboot即可... 上面是把基本所有中文語法都輸入進去了。 記得是source 編輯過的文件,也可以載入環境變數
6. linux centos 6.5 64位系統,通過sendmail發郵件,中文出現亂碼,如何解決
1)說明:
Windows的默認編碼為GBK,Linux的默認編碼為UTF-8。在Windows下編輯的中文,在Linux下顯示為亂碼。為了解決此問題,修改Linux的默認編碼為GBK。
2)查看支持的字元集:
# locale -a
3) 安裝英文版默認的字元集配置為:
# cat /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
4) 修改為中文字元集:
# vi /etc/sysconfig/i18n
LANG="zh_CN.GBK"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh"
SYSFONT="latarcyrheb-sun16"
5) 執行如下命令或者重啟即可生效。
# source /etc/sysconfig/i18n
7. linux下的文件名怎麼是亂碼的
如果你需要在Linux中操作windows下的文件,那麼你可能會經常遇到文件編碼轉換的問題。中默認的文件格式是GBK(gb2312),而Linux一般都是UTF-8。
查看編碼的方法
方法一:file filename
方法二:在Vim中可以直接查看文件編碼
:set fileencoding
如果你只是想查看其它編碼格式的文件或者想解決用Vim查看文件亂碼的問題,那麼你可以在
~/.vimrc 文件中添加以下內容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
這樣,就可以讓vim自動識別文件編碼(可以自動識別UTF-8或者GBK編碼的文件),其實就是依照fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ASCII)編碼打開
文件編碼轉換
多平台方法:
iconv 提供標準的程序和API來進行編碼轉換;
convert_encoding.py 基於Python的文本文件轉換工具;
decodeh.py 提供演算法和模塊來談測字元的編碼;
linux下文件編碼轉換:
方法一:
在Vim中直接進行轉換文件編碼,比如將一個文件轉換成utf-8格式
:set fileencoding=utf-8
或者
11)設置文件集合,即要對哪些文件進行操作,可以使用通配符,比如我通常是對 C/C++ 源程序進行編碼轉換
:args *.h *.cpp
2)給出要在每個文件上執行的命令,這里是轉換編碼:
:argdo set fenc=utf-8 | update
方法二:
iconv 轉換
5.案例:
假如說我們將windows下的一個UTF-8的文件傳到linux環境下,linux環境下的系統編碼是GB18030,我們cat的時候就會出現亂碼,這個時候就應該想到轉碼了,下面我們來進行試驗:
我們將windows下一個名為UTF-8.sh的文件傳到linux系統中,其中UTF-8.sh的內容如下:
我是中文編碼UTF-8模式~
而linux系統的系統語言設置為:
[root@sor-sys zy]# cat /etc/sysconfig/i18n
LANG=zh_CN.GB18030
SYSFONT="latarcyrheb-sun16"
這個時候查看一下文件的內容及編碼:
[root@sor-sys zy]# file UTF-8.sh
UTF-8.sh: UTF-8 Unicode text, with no line terminators
[root@sor-sys zy]# cat UTF-8.sh
鍩挎垜鏄?腑鏂囩紪鐮乁TF-8妯″紡~[root@sor-sys zy]#
[root@sor-sys zy]#
這個時候我們就需要轉換編碼了,記得使用iconv
[root@sor-sys zy]# iconv -f UTF-8 -t GB18030 UTF-8.sh -o GB18030.sh
[root@sor-sys zy]# cat GB18030.sh
??我是中文編碼UTF-8模式~[root@sor-sys zy]#
[root@sor-sys zy]# file GB18030.sh
GB18030.sh: Non-ISO extended-ASCII text, with no line terminators
[root@sor-sys zy]#
convmv就是更改文件名編碼方式的一個工具。
比如
sudo convmv -f gbk -t utf-8 -r –notest /home
就是將/home目錄下原來文件名是gbk編碼方式的全部改為utf-8格式的。這里 -f 後面為原來的編碼方式,-t 後面是要更改為的編碼方式, -r 表示這個目錄下面的所有文件, –notest 表示馬上執行,而不是僅僅測試而已。另外這命令好像要root才能執行,因此要加上 sudo。
8. linux伺服器mail到郵箱的附件為亂碼
mid3iconv -e gbk 文件
9. linux亂碼怎麼解決
一、CentOS系統訪問復 g.cn ,發制現中文亂碼。
於是用以前的方式:yum -y install fonts-chinese
CentOS系統安裝後,還是不能顯示中文字體。我使用 gedit 編輯源碼,其中文注釋也為亂碼。
後來,終於找到以下方法可以解決,需要兩個中文支持的包:
fonts-chinese-3.02-12.el5.noarch.rpm
ftp://ftp.muug.mb.ca/mirror/centos/5.4/os/x86_64/CentOS/fonts-chinese-3.02-12.el5.noarch.rpm
fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm
ftp://ftp.muug.mb.ca/mirror/centos/5.4/os/x86_64/CentOS/fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm
一個是中文字體,一個是字體顯示包。
下載後,在命令行安裝:
#rpm -ivh XXXX ( XXXX 代表上面那兩個包的全名, rpm 不會不知道怎麼用吧?)
CentOS系統安裝完成後,重新啟動即可。
10. 在linux環境下javamail 接收郵件後,郵件的標題和內容總是出現亂碼,應如何解決
首先確認你自己是否使用了GBK
如果沒有就是GBK的問題
如果你使用了GBK還是亂碼,可能跟我前回幾天一樣是中文字答加幾個亂碼(中文字是你自己輸的)
這個不是linux的問題
我們前幾天學javamail 我也遇到過同樣問題
後來自己解決了
我解決的方法是不要直接獲取你的輸入就當郵件的標題或者內容
把你的通過輸入流獲取的標題或者內容先放到一個無關的中間變數空間里
然後發郵件的時候直接從這個變數里讀取內容
我自己這么弄就好了,不亂碼了...
具體會產生這樣的原因我也不知道......