首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cygwin路径到/cygdrive/C/Program Files (x86)/GnuWin32目录?

Cygwin路径到/cygdrive/C/Program Files (x86)/GnuWin32目录?
EN

Stack Overflow用户
提问于 2013-06-05 01:21:48
回答 2查看 11.3K关注 0票数 3

我在Cygwin中执行"C:\Program Files (x86)“目录下的一个程序时遇到了麻烦,有人知道怎么让它工作吗?

代码语言:javascript
复制
jboss@QA024 /cygdrive/C/jboss/EAP-6.0.1/jboss-eap-6.0/bin
$ wgetexe="/cygdrive/C/Program Files (x86)/GnuWin32/wget.exe --help"

jboss@QA024 /cygdrive/C/jboss/EAP-6.0.1/jboss-eap-6.0/bin
$ bash $wgetexe
bash: /cygdrive/C/Program: No such file or directory

jboss@QA024 /cygdrive/C/jboss/EAP-6.0.1/jboss-eap-6.0/bin
$ bash "$wgetexe"
bash: /cygdrive/C/Program Files (x86)/GnuWin32/wget.exe --help: No such file or directory
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-05 01:28:48

试试这个:

代码语言:javascript
复制
wgetexe="/cygdrive/C/Program Files (x86)/GnuWin32/wget.exe"
"$wgetexe" --help

因为它是一个可执行文件,所以您不希望将其作为参数传递给bash,bash将尝试将其作为脚本执行。因为它的路径名中有空格,所以需要用引号将其引起来,这样外壳程序就不会尝试使用无效参数执行cygdrive/C/Program

您还应该能够将该目录添加到$PATH

代码语言:javascript
复制
PATH="$PATH:/cygdrive/C/Program Files (x86)/GnuWin32"

请记住,GnuWin32程序是Windows的可执行文件,它们使用的任何文件路径都将使用Windows语法解释。Cywin可执行文件(任何使用cygwin1.dll的文件)使用Cygwin路径语法。

更好的方法是,安装wget的Cygwin版本,并以wget --help的身份调用它。

例如,如果您使用的是GnuWin32 wget,则可以使用:

代码语言:javascript
复制
wget -O "C:\cygwin\home\yourname\output-file" "$url"

而对于Cygwin wget,您可以使用:

代码语言:javascript
复制
wget -O "/home/yourname/output-file" "$url"

我总是发现只要有可能,使用Cygwin中的Cygwin可执行文件是最容易的。

票数 8
EN

Stack Overflow用户

发布于 2016-12-21 20:59:17

试试这个,它总是有效的,或者是我。

代码语言:javascript
复制
wgetexe="/cygdrive/C/Program\ Files\ \(x86)/GnuWin32/wget.exe"
"$wgetexe" --help
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16923849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档