lsblk + captura apenas os discos

0

Eu quero capturar apenas os discos de lsblk

como mostrado aqui fd0 também aparece apesar de não ser realmente disco para uso

neste caso, podemos apenas fazer lsblk | disco grep | grep -v fd0

mas talvez tenhamos perdido alguns outros dispositivos que precisam filtrá-los por grep -v

que outros dispositivos de disco podem ser exibidos em lsblk | grep disk e não realmente discos?

lsblk | grep disk 

fd0                2:0    1     4K  0 disk
sda                8:0    0   100G  0 disk
sdb                8:16   0     2G  0 disk /Kol
sdc                8:32   0     2G  0 disk
sdd                8:48   0     2G  0 disk
sde                8:64   0     2G  0 disk
sdf                8:80   0     2G  0 disk


lsblk
NAME             MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
fd0                2:0    1     4K  0 disk
sda                8:0    0   150G  0 disk
├─sda1             8:1    0   500M  0 part /boot
└─sda2             8:2    0 149.5G  0 part
├─vg00-yv_root 253:0    0  19.6G  0 lvm  /
├─vg00-yv_swap 253:1    0  15.6G  0 lvm  [SWAP]
└─vg00-yv_var  253:2    0   100G  0 lvm  /var
sdb                8:16   0     2G  0 disk /Kol
sdc                8:32   0     2G  0 disk
sdd                8:48   0     2G  0 disk
sde                8:64   0     2G  0 disk
sdf                8:80   0     2G  0 disk
sr0               11:0    1  1024M  0 rom
    
por yael 02.01.2018 / 15:03

1 resposta

2

Se quiser apenas discos identificados como SCSI pelo número principal do dispositivo 8 , sem partições de dispositivo, você poderá pesquisar no dispositivo principal em vez da string "disco":

lsblk -d | awk '/ 8:/'

em que a opção -d (ou --no-deps ) indica não incluir partições de dispositivo.

Para sistemas linux razoavelmente recentes, o mais simples

lsblk -I 8 -d

deve ser suficiente, conforme observado pelo usuário Nick.

    
por 02.01.2018 / 15:11