bash – 我应该将shell函数定义为函数x()还是x()?
发布时间:2020-12-16 01:07:43 所属栏目:安全 来源:网络整理
导读:我注意到有三种方法可以定义 shell函数,我从来没有在任何地方看到它的解释. # Option 1function log(){}# Option 2log(){}# Option 3,added due to answersfunction log{} 这三个定义之间有不同之处吗?他们的行为是不同的,还是外表? 是否应该使用哪种标准
我注意到有三种方法可以定义
shell函数,我从来没有在任何地方看到它的解释.
# Option 1 function log(){ } # Option 2 log(){ } # Option 3,added due to answers function log{ } 这三个定义之间有不同之处吗?他们的行为是不同的,还是外表? 是否应该使用哪种标准?我希望第一个选项更可取,因为我想它可以消除某些地方的模糊性. 提前致谢! 答案后编辑:投票结束为“基于意见”的人;我询问了行为上的差异,而不仅仅是为什么人们认为我应该使用哪种行为.事实上,只有Bash支持一个,这意味着每个人都应该使用第二个选项.
选项1和3的缺点是它们都是所谓的
“bashisms”.如果你想要跨shell兼容性(例如,使用sh in * BSD)使用选项2,因为任何POSIX shell都必须支持它.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |