shell – ${1:“$@”} in/bin/sh
发布时间:2020-12-15 19:19:38 所属栏目:安全 来源:网络整理
导读:我注意到有时包装器脚本将使用$ {1:“$ @”}作为参数,而不仅仅是“$ @”。 例如,http://svn.macosforge.org/repository/macports/trunk/dports/editors/vim-app/files/gvim.sh使用 exec "$binary" $opts ${1:+"$@"} 任何人都可以将$ {1:“$ @”}分解成英
我注意到有时包装器脚本将使用$ {1:“$ @”}作为参数,而不仅仅是“$ @”。
例如,http://svn.macosforge.org/repository/macports/trunk/dports/editors/vim-app/files/gvim.sh使用 exec "$binary" $opts ${1:+"$@"} 任何人都可以将$ {1:“$ @”}分解成英文,并解释为什么它比普通的“$ @”更有优势?
“歇斯底里葡萄干”,又名历史原因。
JesperE(或Bash手册页)的解释对于它的作用是准确的: 如果$ 1存在且不是空字符串,则替换引用的参数列表。 一年二十年前,如果没有参数,而不是没有任何替代的正确的当前行为,Bourne Shell的一些破坏的小变体将替换为“$ @”的空字符串“”。任何这样的系统是否仍在使用中是可以辩论的。 [嗯:这种扩张不能正常工作: command '' arg2 arg3 ... 在这种情况下,正确的符号是: ${1+"$@"} 无论$ 1是否为空参数,都可以正常工作。所以有人记得错误的符号,意外地引入了一个错误。] (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- angularjs – Angular UI Bootstrap datepicker,视图更改时
- 什么是Angular中的viewproviders? b / w提供商与viewprovi
- Bootstrap 4 更新的新功能(全)
- 请求调页(请求页面调度)原理及性能详解
- angular – 当环境中的生产设置为true时,’ng build’是否使
- 在Play Scala中使用Iteratees和Enumerators将数据流式传输到
- bash – 执行shell脚本时,如何知道它正在执行的行号,
- 可以使用bash来创建服务器吗?
- angular – ng build –prod –base-href
- angularjs – 在Angular.JS中缓存DOM