En un shell script, necesito determinar si un archivo se mantiene en un volumen AFPS. ¿Cuál es la forma más fácil de hacerlo?
Respuesta
¿Demasiados anuncios?Yo haría lo siguiente:
- Utilice una combinación de
basename
(para obtener la ruta completa del archivo, si es necesario) ydf
para determinar en qué volumen se encuentra el archivo. - Utilice
diskutil info
para determinar el tipo de sistema de archivos del volumen (también puede utilizarmount
).
Quizás haya mejores formas de hacerlo, pero seguro que esto funciona.
La siguiente frase fue sugerida por fd0 en un comentario:
df -T apfs /absolute/path/to/file >/dev/null && Do Stuff
Esto ejecuta "Do Stuff"
sólo si el archivo está en un sistema de archivos APFS. Si Do Stuff
es más que unos simples comandos lo mismo se puede lograr con
if df -T apfs /absolute/path/to/file >/dev/null; then
do stuff
do even more stuff
fi