linux - mac - eliminar archivos.ds_store en windows
Elimine los archivos.DS_STORE de la carpeta actual y todas las subcarpetas de la lĂnea de comandos en Mac (5)
Aquí es cómo eliminar recursivamente el archivo .DS_Store
Abra el terminal En la línea de comando, vaya a la ubicación de la carpeta donde están todos los archivos y carpetas: cd a / su / directorio
Entonces, finalmente, escriba el siguiente comando: - encontrar. -nombre ''.DS_Store'' -tipo f -delete
Presiona enter
¡¡Aclamaciones!!
Entiendo que puedo usar find . -name ".DS_STORE"
find . -name ".DS_STORE"
para encontrar todos los archivos .DS_STORE en la carpeta actual y todas las subcarpetas. Pero, ¿cómo podría eliminarlos de la línea de comandos simultáneamente? Descubrí que es realmente molesto alternar entre todas las carpetas y eliminarlas una por una.
Gracias por cualquier consejo.
Cree un nuevo archivo con un editor de texto, copie y pegue el siguiente texto en él y guárdelo con la extensión de archivo ".sh", luego abra el archivo con Terminal. Asegúrese de que el editor de texto realmente esté guardando el texto sin procesar y no guarde el archivo como un archivo con formato de texto enriquecido o algún otro formato de archivo de texto con información adicional en el archivo.
#!/bin/bash
echo -e "/nDrag a folder here and press the Enter or Return keys to delete all files whose names begin with a dot in its subfolders:/n"
read -p "" FOLDER
echo -e "/nThe following files will be deleted:/n"
find $FOLDER -name ".*"
echo -e "/nDelete these files? (y/n): "
read -p "" DECISION
while true
do
case $DECISION in
[yY]* ) find $FOLDER -name ".*" -delete
echo -e "/nThe files were deleted./n"
break;;
[nN]* ) echo -e "/nAborting without file deletion./n"
exit;;
* ) echo -e "/nAborting without file deletion./n"
exit;;
esac
done
También puedes usar globos extendidos ( **
):
rm -v **/.DS_Store
en zsh, bash 4 y shells similares (si no está activado, active mediante: shopt -s globstar
).
find
puede hacer eso Solo agrega -delete
:
find . -name ".DS_Store" -delete
find . -name ".DS_Store" -print -delete