Estoy usando Tag y Hazel y me gustaría revisar los archivos en nuestro servidor de forma recursiva, obtener sus rutas de archivos y nombres de archivos y analizar todo en etiquetas para aplicar al archivo. ¿Hay un script de shell que puede hacer esto? Puedo usar Leap by Ironic Software para eliminar todo el sistema de etiquetas de basura, pero esto me da un verdadero comienzo en un sistema de etiquetado automático para todos mis archivos.
Básicamente voy a tomar un nombre de archivo como
/ Volumes / media / Clientele / Stock / Purchased Sets / Vintage Bundle / vintage-bundle-7 / offset / 30_CIRCULAR_VECTOR_TEXTURES / C03.eps
Trunca el /Volumes/media/Clientele/Stock/
en la parte superior y la extensión de archivo .eps
desde el final, luego cut
el resto en etiquetas separadas:
- Conjuntos comprados
- Paquete Vintage
- cosecha
- paquete
- 7
- compensación
- 30
- CIRCULAR
- VECTOR
- TEXTURAS
- C03
... elimine los espacios iniciales y finales, cambie a minúsculas y luego vuelva a aplicar esas etiquetas al archivo con tag
.
Además, también sería útil eliminar las etiquetas del sistema que son solo números.
Actualización: Necesito hacer esto específicamente:
Hazel maneja la recursión, por cada archivo que encuentra:
- Almacene
$working_folder
y$filepath
-
cut
el$working_folder
del$filepath
-
cut
the$result
en los caracteres_-. <space> ,
y se almacena en una lista o matriz - recorra la lista o la matriz y
sed 's/^[ \t]*//;s/[ \t]*$//'
para eliminar los espacios en blanco iniciales y finales (de enlace ) - convertir la matriz en una cadena separada por comas para alimentar a
tag -s $comma_separated_tags $filepath
Simplemente no sé cómo poner eso en un formato de script bash.