[:关于Cygwin Shell脚本的参数太多

[:关于Cygwin Shell脚本的参数太多,第1张

概述[:关于Cygwin Shell脚本参数太多

我inheritance了一些编写的shell脚本来执行自动化性能testing,而没有任何shell脚本知识。 我通过一些指南浏览,并使用语言,直到我可以做我的项目。 它大部分进展顺利,但我坚持的东西,我绝对没有能够find任何其他地方的答案。

部分旧代码ssh进入testing中使用的服务器,脚本作为参数。 我需要这个脚本在windows和linux上做不同的事情。 到目前为止,我的最佳解决scheme是在uname -a的输出中对Cygwin进行grep,如果find,则执行windows代码。

不幸的是,脚本在通过ssh传递时以及在windows系统上通过Cygwin执行时都会变得糟糕。

#!/bin/bash if [ `uname -a | grep "Cygwin"` ]; then echo "ARRGG windows!" else echo "Some linux command." fi

收益率:

仅列出每个基本频道的红帽卫星子频道

zsh:命令未findlaravel

在Emacs打开时自定义窗口

保存Crontab文件

使用sed用w命令显示空闲时间最长的用户

./test.sh:第2行:[:太多的参数

然后分支到非窗口逻辑。 同样的事情似乎在我尝试过的任何linux发行版上运行良好。

我剩下三个问题。 为什么我得到这个exception,除Googlesearch之外,有什么方法可以让我得到像这样的特定问题(shell脚本,Cygwin,ssh和一个错误的交集)的答案,还有更好,更规范的方法吗?testing平台?

感谢您的时间,我很乐意提供任何其他信息,这将有所帮助。

这个麻烦的条款被逐字复制了,其余的都是由SO编写的。

脚本 – 复制行和第二行如果第二行有一个string

附加到/etc/apt/sources.List

有没有办法告诉启动的GUI应用程序何时显示其窗口?

Bash脚本启动进程,等待随机,终止进程,重启

在文件中扩展已知的环境并留下其他人

Cygwin上的uname -a的输出将会是很多单词,包括Cygwin 。 每个单词都将是一个参数来test (aka [ )。 因此,投诉。 你可能想要:

case "$(uname -a)" in (*Cygwin*) echo "Oh bother!";; (*) echo "Phew!";; esac

要么:

if [ -n "$(uname -a | grep Cygwin)" ] then echo "Oh bother!" else echo "Phew!" fi

要么:

if [ $(uname) = Cygwin ] then echo "Oh bother!" else echo "Phew!" fi

这可以在Mac OS X上获得Cygwin或linux – 或Darwin,以及在AIX,Solaris和HP-UX上的等效名称 – 并避免多参数问题,只运行一个命令而不是两个命令。

我试过你的命令,它在bash 4.2.37上没有错误地执行。

它也将工作没有方括号或反标记 – if测试下一个命令的返回代码…您可以使用test命令,也可以拼写[ ,但它也将与返回代码grep甚至是:总是如此。

#!/bin/bash if uname -a | grep Cygwin > /dev/null; then echo "ARRGG windows!" else echo "Some linux command." fi

请注意,还有一个bash环境变量$OSTYPE ,它将在linux-gnu下是linux-gnu 。

这里有一个深入的讨论: 从Bash脚本中检测 *** 作系统

总结

以上是内存溢出为你收集整理的[:关于Cygwin Shell脚本的参数太多全部内容,希望文章能够帮你解决[:关于Cygwin Shell脚本的参数太多所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1274118.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存