[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: shellの起動について



やつです.

In message "Re: shellの起動について"
    on 99/03/08, Toru Ito <ito@xxxxxxxxxxxxxxxxxxxxxxxxx> writes:

 | 具体的にはM-x shellでpwdした所がc:/itoだったとします。ここからはc:は
 | もちろん/windows/デスクトップとかにもTABによるpathの補完が効きます。
 | ところがd:とかに対しては補完が効きません。

file server上に割当てたdriveにcdして試してみましたが,
わたしのところでは特に問題なくTABで補完できるようです.

 | ちなみにcd d:して、そこでM-x shell-resync-dirsするとd:以下に対しても補
 | 完が効きだすのですが…(多少、変なところもありますが。例えばpwdすると
 | D:/とは表示されず//D/とか言ってるし^^;)
 | こんなもんなんでしょうか(?)

もしかして,cygwinなbash.exeをshellに使っていませんか?
現在のcygwinでは,他のドライブは //e/ のように表現します.

わたしはcygwinのbash.exeを利用していますが,file server上の
drive E: にアクセスすると,

  /home/yatsu$ pwd
  /home/yatsu
  /home/yatsu$ cd e:/
  /e$ pwd
  /e

のように表示されます.これは,bash.exeを単体で起動し場合でも
同じように表示されます.
# あれ? //e にならないぞ??

なんで C: (PC-98x1シリーズだとA:かな)だけ /home などと表示さ
れるかというと,bashにはmountという機能があって,仮想的に
C:\ を / にmountしているからです.
(なにもしなくても,そうなっているはずです.)

  /home/yatsu$ pwd
  /home/yatsu
  /home/yatsu$ mount
  Device           Directory           Type        Flags
  c:\tmp           /tmp                native      text=binary
  c:\cygnus\cygwin-b20\etc /etc                native      text=binary
  e:               /e                  native      text!=binary
  c:               /                   native      text=binary
  /home/yatsu$ mkdir /mnt
  /home/yatsu$ mount -b e:\\ /mnt
  /home/yatsu$ mount
  Device           Directory           Type        Flags
  c:\tmp           /tmp                native      text=binary
  e:               /mnt                native      text=binary
  c:\cygnus\cygwin-b20\etc /etc                native      text=binary
  e:               /e                  native      text!=binary
  c:               /                   native      text=binary
  /home/yatsu$ cd /mnt
  /mnt$ pwd
  /mnt
  /mnt$

こんな感じ.

-- 
谷津昌樹
yatsu@xxxxxxxxxxxxxxxx