cygwin cygdrive 路径和 Windows 命令提示符

cygwin cygdrive 路径和 Windows 命令提示符

可能重复:
cygwin cygdrive 路径和 Windows 命令提示符

我遇到了一个奇怪的问题,cygwin 在安装之间表现不一致,特别是 scp。在这两种情况下,我的 Windows PATH 中都有 c:\cygwin\bin。当我从Windows 命令提示符然而,我在两次安装之间得到了非常不同的结果:

scp /cygdrive/c/something.txt User@server:${HOME}/something.txt

在一台机器上它可以很好地传输文件,但在另一台机器上我收到一个错误:

/cygdrive/c/something.txt: No such file or directory

但是,如果我在出现错误的机器上以这种方式执行命令,它可以正常传输:

scp /c/something.txt User@server:${HOME}/something.txt

为什么会有差异?我需要在 cygwin 中配置某些东西才能使其与 /cygdrive/c 配合使用吗?

我尝试过运行mount --change-cygdrive-prefix /cygdrive,但问题并没有得到解决。

更新:这里有更有趣的东西。如果我ls /c从 Windows 命令提示符执行此操作,我会得到您期望的结果,即 C: 中的所有内容的列表。但是,ls /cygdrive/c它说它不存在。从 cygwin bash 运行这些命令会产生完全相反的行为。

答案1

看起来您的scpls命令不是 Cygwin 版本。大概是因为您在启动 时bash,您的启动脚本会将 改为PATH将 Cygwin 放在/bin前面,而您的 则在早期PATH就具有非 Cygwin 版本的scp和。ls

相关内容