微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何提取 proc 文件的 linux 版本和 gcc 版本?

如何解决如何提取 proc 文件的 linux 版本和 gcc 版本?

正如问题所说,我想知道如何从 proc 文件获取 linux 和 gcc 版本。我知道我必须使用 cat /proc/version 但结果是(对我来说)不必要的信息太多。如果我运行命令,我会得到这个:MINGW64_NT-10.0-19042 version 3.1.6-340.x86_64 (@fv-az314) (gcc version 9.3.0 (GCC) ) 2020-07-09 14:33 UTC(命令在 cmder bash.exe 中运行)。我想要的只是获得 3.1.6-340.x86_64(linux 版本)和 9.3.0(gcc 版本)。我知道有某些命令允许这种信息提取,但由于我是 bash 脚本的新手,我不知道如何去做。我想要的输出是:Linux: <linux version> \n gcc: <gcc version>(其中 \n 是换行符)。

感谢所有帮助。

解决方法

我保留了您的“格式”,但我不确定这是否是您真正想要的。

awk '{printf "Linux: %s \n gcc: %s",$3,gensub(/^.*gcc version ([^ ]+).*$/,"\\1","1",$0)}' /proc/version
Linux: 5.4.0-72-generic 
 gcc: 9.3.0tink@linux:~
,

代码是:

var1=$(uname -r)
var2=$(gcc -dumpversion)
echo -e "Linux version is $var1 \n gcc version is $var2"

这应该为您提供所需的输出

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。