3 votos

¿Cómo puedo imprimir mi UUID del grupo de volúmenes lógicos en el archivo?

Estoy en el proceso de intentar automatizar conseguir el LVGUUID e imprimirlo como cadena a un archivo de texto, o canalizarlo mejor en terminal a otros comandos. Todo lo que puedo hacer ahora es diskutil coreStorage list y luego copiar / pegar el UUID según sea necesario. ¿Hay una manera más rápida de hacer esto?

2voto

user3439894 Puntos 5883

Nota: Esta respuesta es solo ejemplo de código como sólo tengo una Core Volumen de Almacenamiento a prueba en contra, sin embargo, si hay más de uno, el awk comando podría ser modificado para adaptarse en consecuencia. Aunque sin el resultado de múltiples núcleos Volúmenes de Almacenamiento, no puedo dar un ejemplo.

Si es el Logical Volume Group UUID, puede el usuario en el siguiente ejemplo:

$ lvguuid="$(diskutil coreStorage list | awk '/Logical Volume Group/{print $5}')"
$ echo "$lvguuid"
696AD841-1F53-4D33-9496-3E36D33AB270
$ 

En la awk comando, puede sustituir Logical Volume Group con Physical Volume, Logical Volume Family y cambio $5 según corresponda. Basada en el orden de la cadena de búsqueda se muestra en esta línea, va a ser $5, $4, $5.

Para Logical Volume, usted necesitará utilizar un regex, como en el siguiente ejemplo:

lvuuid="$(diskutil coreStorage list | awk '/Logical Volume [A-F0-9]{8}-/{print $4}')"

La comprensión de la regex:

  • Logical Volume [A-F0-9]{8}-

    • Logical Volume coincide con los caracteres Logical Volume literalmente (mayúsculas y minúsculas).
  • [A-F0-9]{8} - Partido de un único personaje presente en la lista de abajo.

    • {8} Cuantificador - Coincide exactamente con 8 veces.
    • A-F a un único carácter en el rango de entre A (índice de 65 años) y F (índice 70) (mayúsculas y minúsculas).
    • 0-9 a un único carácter en el rango de entre 0 (índice 48) y 9 (índice 57) (mayúsculas y minúsculas).
    • - coincide con el carácter - literalmente (mayúsculas y minúsculas).

Así que, en mi ejemplo awk coincide Logical Volume 38712F52- y devoluciones:

38712F52-5967-4A49-87D6-C66D4B199F28

Los ejemplos anteriores se establece una variable que puede ser llamado desde la línea de comandos o script, sin embargo, si lo que la salida a un archivo, utilice el siguiente ejemplo:

diskutil coreStorage list | awk '/Logical Volume Group/{print $5}' > /path/to/filename

En mi sistema he aquí el resultado de la diskutil coreStorage list comando en el cifrado de Unidad Flash USB:

$ diskutil coreStorage list
CoreStorage logical volume groups (1 found)
|
+-- Logical Volume Group 696AD841-1F53-4D33-9496-3E36D33AB270
    =========================================================
    Name:         Encrypted
    Status:       Online
    Size:         15661490176 B (15.7 GB)
    Free Space:   16777216 B (16.8 MB)
    |
    +-< Physical Volume E0E76F6B-A4E2-466D-B8E5-D5977ECD0522
    |   ----------------------------------------------------
    |   Index:    0
    |   Disk:     disk3s2
    |   Status:   Online
    |   Size:     15661490176 B (15.7 GB)
    |
    +-> Logical Volume Family EAF4984B-94C8-49B6-BCC6-76A8724E04D2
        ----------------------------------------------------------
        Encryption Status:       Unlocked
        Encryption Type:         AES-XTS
        Conversion Status:       Complete
        Conversion Direction:    -none-
        Has Encrypted Extents:   Yes
        Fully Secure:            Yes
        Passphrase Required:     Yes
        |
        +-> Logical Volume 38712F52-5967-4A49-87D6-C66D4B199F28
            ---------------------------------------------------
            Disk:               disk4
            Status:             Online
            Size (Total):       15325941760 B (15.3 GB)
            Size (Converted):   -none-
            Revertible:         Yes (unlock and decryption required)
            LV Name:            Encrypted
            Volume Name:        Encrypted
            Content Hint:       Apple_HFS
$ 

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