Linux 在unix中从行中获取选择性详细信息
我的线路是:Linux 在unix中从行中获取选择性详细信息,linux,shell,unix,Linux,Shell,Unix,我的线路是:/dev/xvdb1:UUID=“5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7”TYPE=“ext4” 有人能给我unix命令吗 UUID=“5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7” 从这整行中,命令应该是这样的,无论所需行之前和之后是什么,即UUID=“5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7”,我应该只在输出中得到这么多 感谢使用以下选项之一: $ a='/dev/xvdb1: UUID
/dev/xvdb1:UUID=“5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7”TYPE=“ext4”
有人能给我unix命令吗
UUID=“5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7”
从这整行中,命令应该是这样的,无论所需行之前和之后是什么,即UUID=“5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7”,我应该只在输出中得到这么多
感谢使用以下选项之一:
$ 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
使用空格作为分隔符,-f2
告诉返回第二部分。不带引号:
<your-command>| grep -oP 'UUID="\K[^"]+'
5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7
| grep-oP'UUID=“\K[^”]+'
5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7
加上引号:
<your-command>|grep -oP 'UUID=".*?"'
UUID="5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7"
| grep-oP'UUID=“.*?”
UUID=“5950368c-7bf0-45f6-a2b7-d53d3f3bcfa7”
注:
*?”
:这意味着零个或多个字符直到“最近”“双引号 这看起来像是blkid
输出-如果是这样的话,使用它的-s
选项可能会更简单:blkid/dev/xvdb1-s UUID-o值
。你试过什么了???感谢未知用户的否决票,这真的很有建设性和激励性。你能帮我理解为什么我的答案应该被否决吗?怎么了?我怎样才能改进它呢?请有礼貌地解释一下为什么你投了否决票,有什么问题吗?有什么改进的余地吗?