在哪个文件中存储有关命令的信息
bash --version
?
我曾尝试过/ bin或/ var,/ etc等目录,但没有结果......
我需要Linux和MAC OS x。谢谢!
答案 0 :(得分:1)
strings $(which bash) | grep "Bash version"
输出(例如):
@(#)Bash version 4.3.48(1) release GNU
答案 1 :(得分:1)
您是否有理由相信bash
- 可执行文件本身没有硬编码?
要找出使用了哪个bash
,请运行
which bash
对我来说,它给出了/bin/bash
。现在,要查看可执行文件中是否包含包含子串"version"
的任何类似字符串的字节序列,请运行
strings /bin/bash | grep version
在这台机器上,它给出了:
shell_version_string
build_version
sccs_version
rl_library_version
rl_do_lowercase_version
show_shell_version
rl_readline_version
dist_version
GNU bash, version %s-(%s)
GNU bash, version %s (%s)
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
@(#)Bash version 4.3.48(1) release GNU
display-shell-version
-l do not print tilde-prefixed versions of directories relative
HOSTTYPE The type of CPU this version of Bash is running under.
OSTYPE The version of Unix this version of Bash is running on.
version, type `enable -n test'.
do-lowercase-version
.gnu.version
.gnu.version_r
因此,"Bash version 4.3.48"
在可执行文件中被硬编码为普通字符串。