我正在过滤 lsblk -r
输出以列出非 sda 驱动器。不过,我不会列出 sdab、sdac 等驱动器。
我以前拥有的是:
lsblk -r | grep -o '^[a-z]*' | grep -v sda | grep -v sr | sort | uniq
这返回了非 sda 和非 sr 的驱动器列表,但当驱动器名称超出 sdz 时会失败,因为 grep 将 sdaa 与 sda 匹配并清除它。
我尝试在 grep 模式中包含空格,但没有成功。
我用于测试的示例(假)lsblk -r 输出:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 2,7T 0 disk
sda1 8:1 0 14,9G 0 part [SWAP]
sda2 8:2 0 93,1G 0 part /
sda3 8:3 0 984,6G 0 part /data
sda4 8:4 0 725,4G 0 part /media/backup
sda5 8:5 0 16M 0 part
sda6 8:6 0 498G 0 part /home
sda7 8:7 0 478,5G 0 part
sdc 8:32 1 7,5G 0 disk
sdd 8:48 1 7,5G 0 disk
sde 8:64 1 7,5G 0 disk
sdf 8:80 1 7,5G 0 disk
sdg 8:96 1 7,5G 0 disk
sdh 8:112 1 7,5G 0 disk
sdi 8:128 1 7,5G 0 disk
sdj 8:144 1 7,5G 0 disk
sdl 8:176 1 7,5G 0 disk
sdab 8:144 1 7,5G 0 disk
sdac 8:176 1 7,5G 0 disk
sdad 8:144 1 7,5G 0 disk
sdaz 8:176 1 7,5G 0 disk
sdab1 8:144 1 7,5G 0 part
sdac1 8:176 1 7,5G 0 part
sdad1 8:144 1 7,5G 0 part
sdaz1 8:176 1 7,5G 0 part
我是一名优秀的程序员,十分优秀!