首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Windows上,如何在cygwin的帮助下从命令行运行shell脚本?

在Windows上,如何在cygwin的帮助下从命令行运行shell脚本?
EN

Stack Overflow用户
提问于 2019-02-01 01:09:33
回答 1查看 92关注 0票数 0

我正在尝试运行一个shell脚本,该脚本从Windows上的命令行获取输入参数列表。大多数(全部?)有关在Windows上运行shell脚本的问题只需将用户指向cygwin/git/anaconda工具。但是,出于我的目的,我需要找到一种专门从命令行运行shell脚本的方法。原因是我想通过Matlab运行这个shell脚本。Matlab有system()命令,它允许您从命令行运行命令。

我已经接近解决方案了,但是我在正确读取输入参数时遇到了麻烦。下面是我对命令行的调用:

代码语言:javascript
运行
复制
C:\Users\qualiaMachine> C:\cygwin64\bin\bash --login -c  "W:/code/bashScripts/pre/zipAllSingleChOutput.sh" 1

这个调用的格式遵循我在这里找到的指令,唯一的参数以'1‘开头:https://www.mathworks.com/matlabcentral/answers/221901-can-i-call-a-bash-shell-script-using-cygwin-through-matlab

类似于那篇文章中的操作,我无法让我的脚本接受输入参数。我在shell脚本中有一行,

代码语言:javascript
运行
复制
echo "$#" 

我用它来确定参数是否被正确地传递,到目前为止我还没有成功。我还应该提到,在这一点上,我是通过命令行测试的,而不是通过Matlab调用system() (只是为了运行更直接的测试)。有什么办法解决这个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2019-02-01 01:17:21

哦,好吧。解决方案很简单,只需将双引号移到输入参数列表之后即可。

代码语言:javascript
运行
复制
C:\Users\qualiaMachine> C:\cygwin64\bin\bash --login -c  "W:/code/bashScripts/pre/zipAllSingleChOutput.sh 1"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54465820

复制
相关文章

相似问题

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