it-swarm.com.de

Löschen Sie .DS_STORE-Dateien im aktuellen Ordner und allen Unterordnern von der Befehlszeile auf dem Mac

Ich verstehe, dass ich find . -name ".DS_STORE" verwenden kann, um finden Sie alle .DS_STORE-Dateien im aktuellen Ordner und allen Unterordnern. Aber wie kann ich sie gleichzeitig von der Kommandozeile löschen? Ich fand es wirklich nervig, zu allen Ordnern hin und her zu wechseln und sie nacheinander zu löschen.

Danke für jeden Rat.

22
Aaron Zeng

find kann das tun. Fügen Sie einfach -delete hinzu:

find . -name ".DS_Store" -delete
65
chaos
find . -name ".DS_Store" -print -delete
5
Kirill Malakhov

Sie können auch erweitertes Globbing (**) verwenden:

rm -v **/.DS_Store

in zsh, bash 4 und ähnlichen Shells (wenn nicht aktiviert, aktivieren Sie diese mit: shopt -s globstar).

0
kenorb

Erstellen Sie eine neue Datei mit einem Texteditor, kopieren Sie den folgenden Text, fügen Sie ihn ein und speichern Sie ihn mit der Dateierweiterung ".sh". Öffnen Sie dann die Datei mit Terminal. Stellen Sie sicher, dass der Texteditor den Rohtext tatsächlich speichert und die Datei nicht als Rich Text-Format-Datei oder ein anderes Textdateiformat mit zusätzlichen Informationen in der Datei speichert.

#!/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
0
Sparky

So entfernen Sie die .DS_Store-Datei rekursiv

Öffnen Sie TerminalIn der Befehlszeile wechseln Sie zum Speicherort des Ordners, in dem sich alle Dateien und Ordner befinden: cd in/dein/verzeichnis

Geben Sie schließlich den folgenden Befehl ein: - finden . -name '.DS_Store' -type f -löschen

Drücken Sie Enter

Prost!!

0
Tejinder