首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行bash -v或bash -v与bash -v varname相比,错误地了解bash版本。

运行bash -v或bash -v与bash -v varname相比,错误地了解bash版本。
EN

Unix & Linux用户
提问于 2018-04-14 14:54:17
回答 1查看 1.8K关注 0票数 4

有几次,我误认为bash -vbash --v表示的是bash --version,而它们在Bash4.3.48(1)中却不这样做。

man bash中,bash -v等同于bash --verbose;尽管它返回一个大的输出(据称是一些bashrc文件,可能更多);我认为它只是启动一个子会话。

bash --v的输出要少得多,主要是bash: --v: invalid option

我计划问一问这两个人中的任何一个是否会在一个完全默认的狂欢中出现问题,但我没有看到任何证据证明这一点,我认为bash新手不应该受到这些因素的压力。

我的问题

我确实误解了man bash的意思,bash -v varname的意思是什么。

用一个看似未定义的变量启动一个新的bash会话意味着什么,或者它意味着通过打印导出变量[1的值来启动它]?

面向新来者的

说明:

  1. 导出变量是从一个shell会话继承到另一个shell会话(例如从会话0到会话1)的任何变量。
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2018-04-14 15:03:46

你混淆了两件事。

  1. 启动bash作为bash -v将启动bash shell,其中设置set -v (set -o verbose) shell选项。它等价于bash -o verbosebash --verbose (是少数几个具有长选项等效的shell选项之一)。在启动abefhkmnptuvxBCHP时,可以使用它们的单个字母或直接使用-o和它们的长名称来设置任何bash选项,例如bash -xbash -o xtrace
  2. 我猜想,-v varname来自于内置test命令的描述,该命令能够测试变量是用test -v varname还是[ -v varname ]设置的。

请参阅bash手册或bash中的help sethelp test

bash的长选项不能缩写。

票数 7
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/437758

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档