gpt4 book ai didi

linux - 在 bash 中定义标志参数

转载 作者:行者123 更新时间:2023-12-04 19:30:54 25 4
gpt4 key购买 nike

我编写了 bash 脚本,其中包含了一些日志记录,以查看执行的每个步骤中发生了什么。

现在,我可以将这些日志拆分为调试信息和用户信息(某事已完成等)。所以我想要一些标志参数,比如 --verbose ,我在其他一些 bash 函数中看到启用完整的日志记录和使用,就像:

some_function --verbose

或者
some_function -v

我称之为标志参数,不知道什么是正确的名称,因此我找不到任何有用的东西。

如何为 bash 脚本定义此类参数?

最佳答案

案例更适合这个

while [[ "$@" ]]; do
case "$1" in
-v|--verbose) verbose="true";;
esac
shift
done

在函数中也可以这样做,但请注意,在这种情况下,它将处理传递给函数的参数 some_function -v .
some_function () {
while [[ "$@" ]]; do
case "$1" in
-v|--verbose) verbose="true";;
esac
shift
done
}

然后在脚本的某个地方你可以检查 verbose已设置
[[ "$verbose" ]] && echo "verbose mode" || echo "silent mode"

关于linux - 在 bash 中定义标志参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60500986/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com