从unix中的一行获取选择性细节

时间:2017-09-20 08:46:37

标签: linux shell unix

我的行是:{{1}}

有人可以给我unix命令来获取

UUID = “5950368c-7bf0-45f6-A2B7-d53d3f3bcfa7”

从整行来看,命令应该是这样的,无论在所需的行之前和之后是什么, UUID =“5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7”,我应该在输出中得到这么多......

由于

2 个答案:

答案 0 :(得分:-1)

使用cut command是一个选项:

$ a='/dev/xvdb1: UUID="5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7" TYPE="ext4"'
$ echo $a | cut -d ' ' -f 2
UUID="5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7"

-d ' '告诉cut使用空格作为分隔符,-f 2告诉返回第二部分。

答案 1 :(得分:-1)

没有引号:

<your-command>| grep -oP 'UUID="\K[^"]+' 
5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7

引用:

<your-command>|grep -oP 'UUID=".*?"' 
UUID="5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7"

注意:

.*?":这意味着零个或多个字符,直到&#34; 最近&#34;双引号。