运行特定命令时显示文本消息

运行特定命令时显示文本消息

有时,在我运行一些命令(例如git命令)之后,我发现我忘记了一些配置或忘记了输入一些要求......所以我想到显示一条消息来提醒我或警告我(就像我们运行时显示的消息一样sudo apt upgrade

以下软件包将被升级...您是否要继续[Y/n]?)

我希望在运行特定命令时收到类似的消息(“您是否检查过 conf 文件,是否更新了需求文件?)当我输入,命令运行,当我输入n,命令停止。
如何在 Ubuntu 中执行此操作?

答案1

通常,当在实际命令运行之前必须完成一些事情时(例如提供和设置环境变量、添加额外的位置参数等),命令将被放入包装器脚本中。它应该如何实现 - 这取决于您想要的特定命令以及在实际命令运行之前您想要检查的内容。在非常简单的情况下,例如git,您可以按照以下方式执行操作:

#!/bin/sh

printf "%s\n" "Did you check the conf files, did you update the requirements file?[y/n]"
read answer

case "$answer" in
    [Yy])  exec git commit -a ;;
    [Nn]) printf "%s\n" "Please check. Exiting"; exit 1 ;;
esac

当然,下一个问题是命令的命名。这个脚本可以命名git-commit或类似的东西。我建议不要将包装器脚本命名为与原始应用程序相同的名称。

也可以看看:

相关内容