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

在bash中只获取uname -r的一部分

我只需要在bash中获得前两个“uname -r”命令

经常输出的例子:

uname -r 3.5.0-18-generic

我期望使用魔术bash选项:

3.5

bash:如何从文件提取数千个非连续的行

如何在shell脚本中扩展相对path

npm安装失败

Linuxterminal输出redirect

如何grep,然后从分隔列文件删除

grep a time hh:mm:ss

获取刚启动的屏幕会话的PID

如何检查前一次运行是否失败?

EL 5中/etc/init.d/functions中声明的含义

在Linux的WC命令

假设你想要第二个点之前的一切,这将做你想要的:

uname -r | cut -d. -f1-2

uname本身不支持切割输出,afaik。 管道切割会显示字段1和2( -f1-2 ),由点( -d. )分隔

uname -r | sed 's/([0-9]+.[0-9]+)..*/1/'

你也可以通过参数扩展来完成这个工作:

$ r="$(uname -r)" $ echo ${r%.*} 3.5

${VAR%pat}非贪婪地从VAR结尾删除pat 。 请注意, pat是一个全局模式,即点意味着“点”,星形意味着“任意数量的字符”。

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

相关推荐