0 votos

Cómo enumerar todos /dev/discos, particiones no termina en s1, s2, ...?

Estoy tratando de lista (salida) de la unidad de su Mac OS X nombre de la número de serie en el Bash shell 3.2 en la línea de comandos. Para esto necesito un bucle a través de todos los dispositivos de bloque no ser una partición. Así que necesito un mejor reemplazo para este bash bucle: for disk in /dev/disk*; do …; done

Quiero usar ls sólo, eventualmente con un patrón de caracteres comodín, sin tuberías (a través de la grep) y sin otros utilitarios (como find).

Es como ls /dev/disk* pero no coincidencia de las particiones que termina en s1 (como /dev/disk0s1), s2 etcétera.

Regresión

La falta de intentos:

$ ls /dev/disk[0-9]*[!s][!1-9]
$ ls /dev/disk[0-9]*[!s,!1-9]
$ ls /dev/disk* -d -- *[!s][1-9]
$ ls /dev/disk[0-9]*[!s,1-9]
$ ls /dev/disk[0-9]*[!s]
$ ls /dev/disk[0-9]*[!s][0-9]
$ ls /dev/disk[0-9]*[!s]*
$ ls /dev/disk[0-9]*[!\s1-9]
$ ls /dev/disk[0-9]*[!s1-9]
$ ls /dev/disk[0-9]*([!s1-9])
$ ls /dev/disk[0-9]*[!s]*[0-9]
$ ls /dev/disk[0-9][0-9]
$ ls /dev/disk* --ignore="disk*s?"
$ ls /dev/disk* -I "*s?"
$ ls /dev/disk* -I "*s[1-9]"
$ ls /dev/disk*[!s?]

1voto

Michael Zhou Puntos 167

El uso de ksh's extendida glob:

ls /dev/+(disk?|disk??)

para bash , para girar sobre la ampliación de glob

shopt -s extglob
ls /dev/+(disk?|disk??)

0voto

Pro Backup Puntos 2314
$ ls /dev/disk[0-9]{,[0-9]}
/dev/disk0  /dev/disk11 /dev/disk2  /dev/disk4  /dev/disk6  /dev/disk8
/dev/disk10 /dev/disk12 /dev/disk3  /dev/disk5  /dev/disk7  /dev/disk9

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X