首页 > 解决方案 > Shell one-liner:如何在“&&”之前执行命令?

问题描述

我想做以下事情:

  1. 执行命令,commandA
  2. 如果commandA执行成功,获取commandA作为字符串
  3. 通知commandA执行成功

要实现第 2 步,应该使用哪些命令?

commandA && lastcommand=<some skillful commands> && echo '$lastcommand was executed successfully!'

标签: bashshellshzshone-liner

解决方案


bash没有任何东西可以自动执行此操作。

与其尝试获取命令,不如将其放入变量中并执行该变量。

lastcommand=(commandA arg1 arg2 arg3) && "${lastcommand[@]}" && echo "${lastcommand[@]} was executed successfully"

推荐阅读