if ! fab --fabfile=.deploy/fabfile.py --forward-agent --disable-known-hosts deploy:$target; then rc=1
fi
# does not work:
if ! fab --fabfile=.deploy/fabfile.py \
--forward-agent \
--disable-known-hosts deploy:$target; then
rc=1
fi
我得到的不是整个命令的执行,而是:
./script.sh: line 73: --forward-agent: command not found
更重要的是,在我对Bash的理解中,缺少了什么有助于我理解这个问题以及未来类似的问题?
如果在反斜杠后面和换行符之前有空格(空格或制表符1),行继续将失败。如果没有这样的空白,您的示例对我来说很好:
$ cat test.sh
if ! fab --fabfile=.deploy/fabfile.py \
--forward-agent \
--disable-known-hosts deploy:$target; then
echo failed
else
echo succeeded
fi
$ alias fab=true; . ./test.sh
succeeded
$ alias fab=false; . ./test.sh
failed
从注释中得到的一些细节:shell中的行延续反斜杠并不是真正的特例;它只是一般规则的一个实例,即反斜杠“引号”紧随其后的字符,防止它通常会受到任何特殊处理。在这种情况下,下一个字符是换行符,要防止的特殊处理是终止命令。通常,引用的字符最终会包含在命令中;反斜杠换行被完全删除。但除此之外,机制是一样的。最重要的是,反斜杠只引用紧随其后的字符;如果该字符是空格或制表符,则只需得到一个文字空格或制表符(这将是它自己独立的参数,因为反斜杠阻止空格折叠到分隔其他参数的周围未加引号的空格中);反斜杠对后续换行没有影响。
正如Czechnology指出的那样,1或回车返回。Bash不适合Windows格式的文本文件,甚至在WSL中也不适合。或者Cygwin,但至少他们的Bash端口添加了set-o igncr
选项,您可以设置该选项使其允许回车。
Cooper编写了以下onEdit脚本,用于在从下拉列表中选择列标题名称时对列进行排序: 这工作得很好,但是我现在想根据从下拉列表中选择的列标题名称来更改升序真/假标准。因此,我修改了脚本,目的是当从下拉列表中选择“分支”、“报告者”或“雇员”时,所选列将按升序排序,但如果选择了任何其他标题名称,我希望这些标题名称按降序排序。这是我修改的脚本,但我不能让它发挥作用: 在其他工作表中,我已经能够修改
问题内容: 我正在寻找某种if语句来控制不同元素的状态。 我已经尝试了以下内容,但无法编译 问题答案: LESS具有用于mixin的保护表达式,而不是单个属性。 因此,您将创建一个像这样的mixin: 并通过调用或(或完全不调用)将其打开或关闭。
问题内容: 如何在JSON中使用if语句这是代码:............................................... .................................................................. 这是必需的结果,如下所示: 实际上,这种方式是错误的,并且会导致JavaScript语法错误。 问题答案: 那是普通的J
本文向大家介绍如何在Switch命令中使用PowerShell Break语句?,包括了如何在Switch命令中使用PowerShell Break语句?的使用技巧和注意事项,需要的朋友参考一下 在“切换”命令中,当传递单个值并且如果它匹配条件时,则循环自动退出,但是当传递多个值并且如果值匹配第一个条件时并且如果要终止循环,则可以使用Break声明。下面给出一个例子。 示例 输出结果 您会在上面的
在Linux shell上,我们可以在一行中执行sql命令,如multiline: 但是sql脚本中的multiline在Windows中似乎不起作用。 如何在Windows中执行多行sql语句?mysql多行是否有某种? 当我使用echo并将其管道传输到时,输出的格式不是表 它只是输出 我希望得到以下输出:
问题内容: 告诉我 少于3个分支的交换机效率低下,请改用if语句。 这是为什么?为什么是3?他们如何定义效率? 问题答案: 因为语句是使用两个特殊的JVM指令和编译的。在处理很多案例时它们很有用,但是当您只有很少的分支机构时,它们会导致开销。 相反,一条语句被编译为典型的 …链,这些链速度更快,但在长分支链中使用时需要更多的比较。 您可以通过查看字节码来看到差异,无论如何我都不担心这些问题,如果有