WinSCP2は持っていないけれど、「申込」みたいな名前で同じ症状が
でるなら、MS漢字コードの 2バイト目の 0x5C ( \ ) が悪さをして
いる可能性大ですね。
# ま、変な漢字コードを使うのがいけない。
外国産のソフトウェアなら、日本語対応が不十分なんでしょ?
ソースコードがあるなら自分でパッチをあてる。
# ソースコードがないなら、そんなソフトウェアは棄てる。
桂 英治@(株)横浜インテリジェンス
(kat...@hamaint.co.jp)
早川> インターネットでWinSCP2を使用してFreeBSD 4.5-RELEASEサーバーのファイ
早川> ルにアクセスしてみたのですがディレクトリー名を工程表としたディレクト
早川> リーを参照出来ません
「表」をシフト JIS コードで表現すると、95 5C になります。で、5C という
のは \ を表す 1 バイトでありますから、そのへんの不具合でしょう。つまる
ところ、
桂> 外国産のソフトウェアなら、日本語対応が不十分なんでしょ?
ということになります。
http://winscp.vse.cz/eng/wishlist.php に
| Translation of charsets in transfered files.
というのがあがっていますので、
・とりあえず、最新版の 2.3.0 #140 に上げてみる
・それでダメなら、当分は「表」の文字を使わない運用でしのぐ
・そして、辛抱強くバージョンアップを待つ
というのが吉かと。
桂> # ソースコードがないなら、そんなソフトウェアは棄てる。
とはいかないですよ。現状、GUI で scp できるソフトが他に見あたりません。
きちんと日本語に対応した対抗馬が出てくれれば話は別なんですが。
コマンドラインから pscp 叩いてくれと言われても Windows ユーザーでそれに
抵抗のある人は少なくないです。特に、仕事のためだからという理由でコンピュ
ータを使っているような人は。
========================================================================
飯嶋 浩光 / でるもんた・いいじま http://www.ht.sakura.ne.jp/~delmonta/
IIJIMA Hiromitsu, aka Delmonta mailto:delm...@ht.sakura.ne.jp
> 「表」をシフト JIS コードで表現すると、95 5C になります。で、5C という
> のは \ を表す 1 バイトでありますから、そのへんの不具合でしょう。つまる
> ところ、
>
> 桂> 外国産のソフトウェアなら、日本語対応が不十分なんでしょ?
>
> ということになります。
今まで私は WinSCP2 でそういうトラブルを経験したことがなかったので、
ちょっと実験してみました。
手元のバージョンは 2.2.0 #120 ですが、「/home/delmonta/表示/工程表/XXXX」
として、問題なく動作しました。
http://winscp.vse.cz/eng/history.php には、2.0 beta #85 での修正点として
| File names containing some special characters (exclamation mark, plus)
| are now handled correctly.
とありますので、そのときに修正されたのかもしれません。
というわけで、
> ・とりあえず、最新版の 2.3.0 #140 に上げてみる
で解決するのではないかと思います。
> > 「表」をシフト JIS コードで表現すると、95 5C になります。で、5C という
> > のは \ を表す 1 バイトでありますから、そのへんの不具合でしょう。つまる
> > ところ、
> >
> > 桂> 外国産のソフトウェアなら、日本語対応が不十分なんでしょ?
> >
> > ということになります。
>
> 今まで私は WinSCP2 でそういうトラブルを経験したことがなかったので、
> ちょっと実験してみました。
> 手元のバージョンは 2.2.0 #120 ですが、「/home/delmonta/表示/工程表/XXXX」
> として、問題なく動作しました。
>
> http://winscp.vse.cz/eng/history.php には、2.0 beta #85 での修正点として
> | File names containing some special characters (exclamation mark, plus)
> | are now handled correctly.
> とありますので、そのときに修正されたのかもしれません。
>
> というわけで、
>
> > ・とりあえず、最新版の 2.3.0 #140 に上げてみる
>
> で解決するのではないかと思います。
アドバイスありがとうございます
使用しているのが 2.2.0(Build122) だったので 2.3.0(Build146) にかえてみたので
すがダメでした
WinSCPの問題ではなにのかもしれません 手元のPCにていろいろ試験してみます
サーバー側で何かチェックするポイントがあれば教えてください
<hayakawa>
> 使用しているのが 2.2.0(Build122) だったので 2.3.0(Build146) にかえて
> みたのですがダメでした
> WinSCPの問題ではなにのかもしれません 手元のPCにていろいろ試験してみます
むむう。
他に思い当たる点といえば、「Change case to」のチェックを私は「No change」
にしていることでしょうか。
> サーバー側で何かチェックするポイントがあれば教えてください
まずは問題の「工程表」フォルダのあるディレクトリで、
% /bin/ls | od -c
を実行してみてください。まずこれで、「そもそも FreeBSD 上のファイル名に
不正な文字が入っている」という可能性を排除します。
次に、WinSCP2 で問題の場所に行き、メニューバーから「Commands→Open Terminal」
を選んで、そこで「ls -la | cat」とタイプしてみて「工程表」というファイル
名が正常に表示されるかどうかの確認ですね。WinSCP2 は内部的には ls コマン
ドを発行してファイル一覧を取得していますので。
ここで異状があれば、ログインダイアログで Advanced options にチェックを
入れて、Shell の項目で「Clear aliases」と「Clear national variables」に
チェックが入っていることを確認し、さらに、ログインシェルが csh 系ならば
その上の Shell のところを Default から「/bin/sh」や「/usr/local/bin/bash」
に変更してみてください。
#csh 系もサポートしてくれと作者にリクエストしましたけど、却下されました。
At Fri, 30 May 2003 01:22:13 +0900, IIJIMA Hiromitsu wrote:
> ここで異状があれば、ログインダイアログで Advanced options にチェックを
> 入れて、Shell の項目で「Clear aliases」と「Clear national variables」に
> チェックが入っていることを確認し、さらに、ログインシェルが csh 系ならば
> その上の Shell のところを Default から「/bin/sh」や「/usr/local/bin/bash」
> に変更してみてください。
これが一番確実だとおもいます。職場では、これをお願いしています。
# プルダウンメニューには/bin/bashがあるので、サーバ側でそれを用意してある
# と、ユーザさんには少しやさしいかもしれません。
--
石原孝紀@中京大学情報科学部スタッフルーム
> > ここで異状があれば、ログインダイアログで Advanced options にチェックを
> > 入れて、Shell の項目で「Clear aliases」と「Clear national variables」に
> > チェックが入っていることを確認し、さらに、ログインシェルが csh 系ならば
> > その上の Shell のところを Default から「/bin/sh」や
「/usr/local/bin/bash」
> > に変更してみてください。
「ここで異状」はなかったのですが次の手順を行い Shell のところを /bin/sh に変
更したら正常にアクセスできるようになりました
あまり詳しくないので入門書の例題スクリプトを使えるように Shell をいつも csh
にしているしだいです
皆様 ありがとうございました
> Shell のところを /bin/sh に変
> 更したら正常にアクセスできるようになりました
とりあえずは解決おめでとうございます。
☆
以下、補足説明です。
> 「ここで異状」はなかったのですが次の手順を行い
これ、人間の目から見て正常に表示されるだけではダメなんですよ。
特定の書式に厳格に従った出力をしてくれないと、WinSCP2 は受け付けません。
たとえば、
・ファイル名以外の部分に日本語が出ると、完全にアウト
・ls -a で出力されるファイル名の後ろに、ディレクトリを表す「/」や実行フ
ァイルを表す「*」が出ているだけでもアウトの場合あり
です。
で、世の中の環境は必ずしもその「特定の書式に厳格に従った出力」をしないの
で、WinSCP2 は、「Clear aliases」「Clear national variables」というオプ
ションを用意しています。
前者は、たとえば ~/.cshrc で「alias ls ls -aF」と書かれていたような場合
に困る(ls は対して困らないけど、「alias mv mv -i」なんかが設定されてる
と本当に困る)ので、ログイン直後に「unalias ls」「unalias mv」を実行させ
るためのものです。このコマンドはシェルが csh 系でも正常に処理されます。
問題は後者の「Clear national variables」で、これは強制的に英語表示にする
ためのものなのですが、「LANG=C ; export LANG」といったコマンドを実行しま
す。この書き方は、/bin/sh、bash、zsh では意味を持ちますが、csh/tcsh では
これではダメで、「setenv LANG C」といった感じで実行しなければいけません。
#「『LANG=C ; export LANG』だけでなく『setenv LANG C』も実行してくれ」
#と作者にリクエストしましたが、却下。まあ、WinSCP2 からは /bin/sh を使
#うように設定すればいいだけのことなんですが。そんなわけで、私が書いた
#http://www.sodan.ecc.u-tokyo.ac.jp/2002/article/tips/ssh/winscp.shtml
#には、事情の詳細は書きませんでしたが、その設定を指定してあります。
☆
> あまり詳しくないので入門書の例題スクリプトを使えるように Shell をいつも
> csh にしているしだいです
私も csh 派です(正確には tcsh ですが、FreeBSD ではどちらでも同じです)。
ただ、システム管理用のスクリプト(/etc の下にあるものとか)は /bin/sh で
書かれているので、いつかは sh 系の書法も少しは覚える必要が出てきますね。
私は現在、tcsh のない環境(csh はあるけど、カーソルキーでのコマンドヒス
トリーとかの機能はついていないので、コマンドを自分で入力する目的には使い
物にならない)も一部で使っているので、そちらのために bash を勉強中です。