命令执行成功后,创建文件.当它失败时创建另一个.一行



在Bash中,我希望在命令成功时创建一个文件,否则创建另一个文件。

这一行
if `my command`; then
  touch command.complete
else
  touch command.fail
fi

可以用一行写吗?

在大多数情况下可以这样做:

my.command && touch command.complete || touch command.failed

由于@uzsolt,最极端的情况是touch complete本身可能失败。然后执行touch failed。如果差异很大,您可以使用这个:

my.command && (touch command.complete || true) || touch command.failed

最新更新