Entfernen Sie doppelte Bilder

Entfernen Sie doppelte Bilder

Mein Originalbild ist img.jpg.

Wie kann ich doppelte Bilder entfernen, nämlich img.jpg1, img.jpg2, img.jpg3? Ich möchte das Bild mit der Erweiterung .jpg behalten.

Danke

Antwort1

GUI-Lösung

  1. Öffnen Sie in Nautilus den Auswahldialog mit ctrl+S
  2. Geben Sie ein *.jpg, um alle Bilder mit der Erweiterung .jpg auszuwählen

Bildbeschreibung hier eingeben Bildbeschreibung hier eingeben

  1. Kehren Sie die Auswahl mit ctrl+ shift+ ium, um die Bilder ohne die Erweiterung .jpg auszuwählen (was Sie möchten).

Bildbeschreibung hier eingeben

  1. Klicken Sie mit der rechten Maustaste und wählen Sie aus Move to trashoder drücken Sie einfach die deleteTaste.
    Von hier aus können Sie auch alles andere tun, was Sie möchten – komprimieren, ausschneiden usw.

Antwort2

Kombinieren Sie den findBefehl mit -regexund -execFlags. In diesem speziellen Beispiel -execwerden einfach alle Duplikatsbilder in den Papierkorb verschoben, sodass Sie sie bei Bedarf immer noch wiederherstellen können. Sie können den rmBefehl später verwenden oder den Papierkorb über die GUI leeren.

testerdir:$ ls
img.jpg  img.jpg1  img.jpg2  img.jpg3

testerdir:$ find  . -regex ".*\.jpg[1-9]+" -print -exec mv -t $HOME/.local/share/Trash/ {} +                                 
./img.jpg1
./img.jpg3
./img.jpg2

testerdir:$ ls $HOME/.local/share/Trash                                                                                   
expunged/  files/  img.jpg1  img.jpg2  img.jpg3  info/

testerdir:$ ls
img.jpg

Antwort3

bashNicht-rekursive Verwendung von :

shopt -s extglob nullglob
rm img.jpg+(?)

Wenn Sie am Ende nur Ziffern haben:

rm img.jpg+([0-9])

Rekursiv:

shopt -s globstar extglob nullglob
rm **/img.jpg+(?)

Falls am Ende nur Ziffern stehen:

rm **/img.jpg+([0-9])

Hier haben wir einige Shell-Optionen verwendet:

  • extglobermöglicht uns, erweiterte Glob-Muster abzugleichen, d. h. es +(?)wird ein oder mehrere Vorkommen beliebiger Zeichen abgeglichen. Dies sollte in einer interaktiven Shell standardmäßig aktiviert sein.

  • nullglobergibt einen Nullstring, wenn keine Übereinstimmung gefunden wird

  • globstarermöglicht uns eine rekursive Suche mit**

verwandte Informationen