[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:50663] Re: 日本語ファイル名について
柴田(あ)です。
はじめまして。
<14e3c4c20806080841r4afe3e2dmf62dfb55fdd7a495@xxxxxxxxxxxxxx> の、
表題 "[debian-users:50643] Re: 日本語ファイル名について"
発信 "Mon, 9 Jun 2008 00:41:36 +0900"
> 確かにwinXPから見に行くのであればsjisファイル名でなんら問題ありません。
> 当方、今後mysqlの利用を考えており、puttyでmysqlを操作してみたいのです。
> mysqlはwindows版もありますがosへのアクセス人数を増やすには費用がかかります。
> そこで無償で使えるdebianの勉強を始めたところです。
> それにはまず日本語が正しく表示されなければ話になりません。
ファイル名はどんな風になっていますか?
当方のところだとこんな風になります。 (ターミナルは utf-8 )
$ ls
3560タ゜テ??ータョゾス・xls NWウオヘ??゛.pdf
もしこんな風(utf-8に変換)に
$ ls | nkf -w
3560設置完成図書.xls
NW概要図.pdf
nkf で出力文字コードを変えると表示が正しくかわるなら
ターミナルソフトの期待する表示文字コードを変えるとラクです。
上の nkf のオプション -w はもとの文字コードが何でアレ
utf-8 にしてくれるという仕組みで、当方のターミナルソフトは
標準で utf-8 がくるものと期待して表示しているから、
ls そのままだと文字が化け、 nkf で utf-8 に変換すると
日本語に戻るということです。
もう一度ポイントを書きます
・ samba での保存文字コード
・ターミナルソフトでの期待する文字コード
をあわせる必要があるということです。
下にいくつか失敗例を挙げます。
こちらはターミナルソフトの表示は utf-8 で sjisに変換
$ ls | nkf -s
3560ンu
ョャ}.xls
NW
Tv}.pdf
こちらはターミナルソフトの表示は utf-8 で jis に変換
$ ls | nkf -j
3560@_CV40@.?^=q.xls
でもターミナルソフトの表示を sjis にしてあれば sjis に変換しても
$ ls | nkf -s
3560設置完成図書.xls
NW概要図.pdf
ちゃんと表示されます。
でもターミナルソフトの表示を jis にしてあれば jis に変換しても
$ ls | nkf -j
3560設置完成図書.xls
NW概要図.pdf
ちゃんと表示されます。
要は保存されているファイル名の文字コードとターミナルが同じ
文字コードを使えばいいだけです。
なおもともとあるファイルは、偶然同じ文字コードにならない
限り正しく見えるようにはなりません。
ここで使う nkf がなかったら
$ ls | nkf -w
-bash: nkf: command not found
こんな風にインストールしてみてください。
$ sudo apt-get install nkf
Password:
Reading package lists... Done
Building dependency tree... Done
The following NEW packages will be installed
nkf
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 115kB of archives.
After unpacking 299kB of additional disk space will be used.
Get: 1 http://ftp2.jp.debian.org stable/main nkf 2.07-1 [115kB]
Fetched 115kB in 1s (115kB/s)
Selecting previously deselected package nkf.
(Reading database ... 26695 files and directories currently installed.)
Unpacking nkf (from .../archives/nkf_2.07-1_i386.deb) ...
Setting up nkf (2.07-1) ...
ちなみに当方の samba の文字コードは euc なので一番最初にやった ls の
結果はそのままでは化けますが、ターミナルソフトの文字コードを euc に
すると下のように化けなくなります。
$ ls
3560設置完成図書.xls NW概要図.pdf
[global] セクションの文字コードのところはこんな感じですから euc で保存されます。
unix charset = EUC-JP
dos charset = CP932
display charset = CP932
参考になれば幸いです。
--
SHIBATA Akira ケーブルテレビはまちづくり
shibata@xxxxxxxxxxxxxx phone : +81-429-74-3611