Linux 两点后的正则表达式

Linux 两点后的正则表达式,linux,bash,sed,grep,Linux,Bash,Sed,Grep,在Linux中输出lsb_release-a后,我只想在屏幕上打印分发服务器ID。 示例输出: No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.1 LTS Release: 20.04 Codename: focal 我只想打印分发服务器id,即“Ubuntu”文本。 我需要在bash中使用sed或grep来实现这一点。如何执行此命令?您可以使用awk尝试此命令: ls

在Linux中输出lsb_release-a后,我只想在屏幕上打印分发服务器ID。 示例输出:

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.1 LTS
Release:    20.04
Codename:   focal
我只想打印分发服务器id,即“Ubuntu”文本。
我需要在bash中使用sed或grep来实现这一点。如何执行此命令?

您可以使用
awk
尝试此命令:

lsb_release -a 2>/dev/null | grep "Distributor ID" | awk '{print $3}'

bash
,不需要外部程序(当然除了
lsb_发行版
):

#/usr/bin/env bash
re=“^Distributor ID:[[:space:]+(.*)”
而IFS=读取-r行;做
如果[[$line=~$re]];然后
回显“${BASH_重赛[1]}”
fi
完成