小编Isa*_*ari的帖子

为什么要避免在 bash 脚本中使用“&&”?

我正在编写一个 bash 脚本,其中包含一个简单的 if 部分,其中有两个条件:

  if [[ -n $VAR_A ]] && [[ -n $VAR_B ]]; then
    echo >&2 "error: cannot use MODE B in MODE A" && exit 1
  fi
Run Code Online (Sandbox Code Playgroud)

一位高级工程师审查了我的代码并评论道:

当您可以简单地执行后续行中的两个命令时,请避免使用 && 。

他没有进一步解释。但出于好奇,我想知道这是否属实,以及避免使用&&.

shell bash

47
推荐指数
4
解决办法
2万
查看次数

我们可以在 bash 中使用“${a:-b}”进行变量赋值,并使用“a”命令吗?

我正在写一个 bash 脚本。

根据这篇原始文章,我了解到如果 var未设置或为空,则c=${a:-b}可以使用它来设置变量。ca

我想知道我们是否可以将这种情况扩展到将命令的输出分配给变量。例如,我有一个 bash 命令,我可以将它分配给some commandvarc

c=$(some command)
Run Code Online (Sandbox Code Playgroud)

但我还想包括这样的情况:如果 的输出为some command空,我会为 c 指定另一个默认值。

我知道我可以if-else在 bash 脚本中编写普通的代码,但只是想知道是否有类似的更优雅的方式c=${a:-b}

bash

7
推荐指数
1
解决办法
318
查看次数

标签 统计

bash ×2

shell ×1