为什么 gitbash 中的 ls 指令不显示我的 C 盘?

问题描述 投票:0回答:2
iamth@DESKTOP-TQE8AEJ MINGQ64 ~ (master)
$ cd ..

iamth@DESKTOP-TQE8AEJ MINGQ64 /c/Users
$ cd ../..

iamth@DESKTOP-TQE8AEJ MINGQ64 /
$ ls
LICENSE.txt        cmd/  git-bash.exe*  proc/         unins000.exe*
ReleaseNotes.html  dev/  git-cmd.exe*   tmp/          unins000.msg
bin/               etc/  mingwt64/      unins000.dat  usr/

iamth@DESKTOP-TQE8AEJ MINGQ64 /
$ cd c

iamth@DESKTOP-TQE8AEJ MINGQ64 /c
$

我尝试过其他事情,比如做

ls *
,但它不会出现在任何地方。

注意,我可以导航到我的 C 驱动器,但

ls
指令未列出它。为什么会这样,我该怎么办?

bash command-line command-line-interface ls
2个回答
0
投票

问题是这些驱动器挂载点并不真正在文件系统中,而是由底层为了方便而添加的MYSS2(可以在/ proc / mounts中找到)

你可以像这样猴子补丁

ls

function ls(){
   command ls $*
   cat /proc/mounts | awk '/: \// {print $2}' | xargs ls -d $*
}

# and then continue using it as usual:
ls -l

-1
投票

Windows 中的 Git Bash 终端是 Unix 风格的 shell,不直接支持访问 Windows 驱动器。要从Git Bash访问C盘,需要将C盘挂载到Git Bash文件系统中。您可以通过运行以下命令来完成此操作:

mount -t drvfs C: /c. 

运行此命令后,您应该可以通过运行

ls /c
来访问C盘。

© www.soinside.com 2019 - 2024. All rights reserved.