gpt4 book ai didi

bash - 有人可以解释/详细说明这个 shell 参数替换吗? ${cfg+-f "$cfg"}

转载 作者:行者123 更新时间:2023-11-29 09:44:15 28 4
gpt4 key购买 nike

当我来的时候,我正在寻找一个很好的解决方法来保持我的 .tmux.conf 文件在系统之间保持一致(我有 OS X 和 Ubuntu,它们有不同的复制/粘贴支持技术)在这条提供解决方案的评论中:https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard/issues/8#issuecomment-4134987

但在我使用评论中的代码片段之前,我想完全理解它在做什么。特别是,我不太明白最后一行,以及 bash man page for parameter substitution没有太大帮助。

这是一行:

exec /path/to/actual/tmux ${cfg+-f "$cfg"} "$@"

具体来说,${cfg+-f "$cfg"} 部分是什么意思?

最佳答案

表示没有设置则跳过该参数。实际上导致以下之一:

exec /path/to/actual/tmux -f "/some/cfg" "$@"
exec /path/to/actual/tmux "$@"

因此,如果设置了 $cfg,则使用 -f "$cfg",否则什么都不用,因此 tmux 不会提示 缺少参数- f.

关于bash - 有人可以解释/详细说明这个 shell 参数替换吗? ${cfg+-f "$cfg"},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18860158/

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