如何从Shell执行库调用命令?哈希字符串长度计算相关疑问
搞懂
apropos length返回的那些库函数条目 哈哈太懂这种“本来只想查个小功能,结果好奇挖到一堆知识点”的感觉了!我来给你拆解清楚:
- 你一开始只是想计算字符串(比如哈希值)的长度,敲了
apropos length,结果出来一堆带(3)或(3ssl)后缀的条目 - 后来你查
man man搞清楚了:(3)代表库调用(程序库中的函数),这些不是能直接在终端执行的命令!
为啥会出现这些?
apropos是搜索系统里所有手册页的名称和描述,所以返回的这些都是C语言标准库(或者OpenSSL这类第三方库)里和“length”相关的函数——比如strlen(3)就是用来计算字符串长度的C函数,但它是给程序员写代码用的,得嵌入到C程序里编译运行,没法直接在终端里敲个strlen就用。
那终端里直接算字符串长度该用啥?
给你几个实用的终端命令:
- 计算直接输入的哈希值长度:
echo -n "你的哈希字符串" | wc -c(-n是避免echo自动加的换行符干扰统计) - 用
printf更稳妥:printf "你的哈希字符串" | wc -c - 如果哈希值存在文件里:直接
wc -c 存储哈希的文件名就行
内容的提问来源于stack exchange,提问作者C0deDaedalus
相关产品推荐
相关产品推荐

