Necesito mover un gran volumen a un nuevo servidor raid que esté formateado para PC. Sin embargo, tengo un par de rutas y nombres de archivo que interrumpen este proceso.
Solo me gustaría saber cómo usar la terminal para:
¿Alguien puede ayudar?
Sé cómo buscar rutas largas y encontrar " . -type f -name '?????...*' ", pero no estoy seguro de cómo apuntar a mi disco externo.
La unidad externa está montada debajo /Volumes
, ejecute ls /Volumes
para ver el nombre exacto.
Después puedes usar
find /Volumes/NAME-FROM-ABOVE -print |
while read line; do [[ ${#line} -gt 130 ]] && echo $line; done
para enumerar todos los archivos donde la ruta y el nombre de archivo combinados tienen más de 130 caracteres.
PD: Esto no funcionará para nombres de archivos/ruta que contengan nuevas líneas y cosas similares (lo que generalmente no es un problema) PPS: Si el nombre de su volumen contiene espacios, debe envolverlo ""
->find "/Volumes/LaCie - BRYT" -print ...
El siguiente comando imprimirá todos los archivos que tengan más de 130 caracteres
find -E . -type f -regex '.*[^/]{130}'
El comando Terminal (bash) para enumerar los discos conectados al sistema es diskutil
. El comando diskutil list
generará todos los discos; simplemente seleccione el identificador que coincida con su dispositivo externo.
Por ejemplo:
/dev/disk3 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.1 GB disk3
1: EFI EFI 209.7 MB disk3s1
2: Apple_HFS FreeAgent Go 499.8 GB disk3s2
/dev/disk4 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 TB disk4
1: EFI EFI 209.7 MB disk4s1
2: Apple_HFS My Passport for Mac 999.8 GB disk4s2
disk0
, disk1
y disk2
están en un volumen CoreStorage. disk3
y disk4
son mis drivers externos
Para acceder a la unidad (suponiendo que esté montada), busque en el /Volumes
directorio el punto de montaje adecuado.
Suponiendo que quisiera buscar "My Passport for Mac", ingresaría el comando:
find -E /Volumes/My\ Passport\ for\ Mac/ -type f -regex '.*[^/]{130}'
find
no es compatible -regextype
.-E
funciona -> find -E . -type f -regex '.*[^/]{130}'
:-)-E
cuando llegó tu comentario. Desafortunadamente, no tengo ningún archivo tan largo para probarlo realmente . ¡Gracias!
Estudio pintado a mano
sin ladera
Estudio pintado a mano