为什么Windows上的bash会显示“没有这样的文件或目录”?

时间:2019-08-16 12:57:47

标签: windows bash shell windows-10 windows-subsystem-for-linux

我正在尝试在Windows上使用bash运行我的shell脚本,但没有显示此类文件。该文件肯定存在(我从命令行检查了此文件)

# Tried all of these, and they all fail
bash C:/Users/myuser/Testing/my_script.sh
bash /c/Users/myuser/Testing/my_script.sh
bash -c /c/Users/myuser/Testing/my_script.sh
bash C:\Users\myuser\Testing\my_script.sh

我刚得到:

  

/ bin / bash:C:/Users/myuser/Testing/my_script.sh:没有此类文件或目录

文件存在存在:

dir C:\myuser\Testing\my_script.sh
  

驱动器C中的卷是Windows   卷序列号是XXXX-XXXX

     

C:\ myuser \ Testing \ my_script.sh的目录

     

2019/08/15上午10:42 7,783 my_script.sh
              1个文件7,783字节
              0 Dir(s)370,855,380,416字节免费

bash版本:

bash --version
  

GNU bash,版本4.4.19(1)-发行版(x86_64-pc-linux-gnu)
  版权所有(C)2016 Free Software Foundation,Inc.
  许可证GPLv3 +:GNU GPL版本3或更高版本http://gnu.org/licenses/gpl.html

     

这是免费软件;您可以自由更改和重新分发它。
  在法律允许的范围内,没有任何担保。

bash which bash
  

/ bin / bash

使用从cmd shell运行的Windows 10。

1 个答案:

答案 0 :(得分:3)

这很难找到答案,因为大多数示例都显示访问C硬盘为/c/Users/myuser,但由于它将Linux子系统视为不同操作系统的“排序”,因此该硬盘必须是已安装。因此正确的路径是:/mnt/c/Users/myuser/Testing/my_script.sh

bash /mnt/c/Users/myuser/Testing/my_script.sh

键是开头的 /mnt