4 votos

Cómo mostrar específicos de lun a partir de lsscsi comando?

Necesito grep específico luns de la lsscsi comando.

Por ejemplo:

[root@e15l1 ~]# lsscsi 4 0 1 | awk '{print $1,$6}' | head
[4:0:1:0] -
[4:0:1:1] /dev/sdab
[4:0:1:2] /dev/sdj
[4:0:1:3] /dev/sdz
[4:0:1:4] /dev/sdk
[4:0:1:12] /dev/sdo
[4:0:1:13] /dev/sdp
[4:0:1:38] /dev/sdad

¿Cómo puedo grep sólo luns 1, 12 y 13?

Yo estoy usando:lsscsi | awk '{ print $1,$6 }' | grep -w 4:0:1 | egrep -w '1|1[2-3]'

El problema es cuando estoy en busca de una lun con el mismo número como otros scsi entradas. Por ejemplo en mi caso la búsqueda lun 1 le dará toda la producción, debido a mi ID también es 1. Mismo con lun 4(por Host adapter)...

La salida debe ser como en el ejemplo, scsi entradas y /dev/...

3voto

Egor Vasilyev Puntos 153

Intente esto:

lsscsi 4 0 1 | sed -r '/\[4:0:1:(1|12|13)\].*/!d'

La salida será:

[4:0:1:1] /dev/sdab
[4:0:1:12] /dev/sdo
[4:0:1:13] /dev/sdp

2voto

Gnudiff Puntos 413

Esto debería funcionar yo independientemente de los otros números en cualquier lugar en la línea de :

egrep '^\[\d+:\d+:\d+:(1|12|13)\]'

Podría también la necesidad de barra diagonal inversa de colones, no en el equipo de cajero automático para comprobar.

Para hacer esto durante un intervalo de sustituto (1/2/13) por ejemplo: (2[0-8])

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: