Löschen von Leeren Ordnern

Martin_Egli

Benutzer
Mitglied seit
24. Jun 2010
Beiträge
29
Punkte für Reaktionen
0
Punkte
0
Hallo

Ich suche die Möglichkeit in einem Verzeichniss alle leeren odner zu löschen. Leider fehlt mir dazu die Opton -empty in der Funktion Find. Gibt es eine Alternative?

Im Netz hatte ich sowas gefunden:
find dir2 -depth -empty -type d -exec rmdir {} \;
aber eben -empty fehlt.

Gruss Martin
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Du kannst über ipkg ein "richtiges" find installieren, das alle Funktionen enthalten sollte.

MfG Matthieu
 

Martin_Egli

Benutzer
Mitglied seit
24. Jun 2010
Beiträge
29
Punkte für Reaktionen
0
Punkte
0
Kannst du mir schon etwas mehr Fleisch am Knochen geben. Wenn du Findutils meinst, das habe ich installiert doch finde ich die Option -empty nicht, weder im opt/bin noch im /opt/lib/ipkg/alternatives. Es währe schon gut etwas mehr Infos zu bekommen.

Gruss Martin
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Sorry, ich dachte du bist noch bei ipkg kleben geblieben. Bei meinem /opt/bin/find (aus findutils) gibt es die Option -empty
Ist dein ipkg aktuell?

MfG Matthieu
 

Martin_Egli

Benutzer
Mitglied seit
24. Jun 2010
Beiträge
29
Punkte für Reaktionen
0
Punkte
0
Ja das IPKG ist aktuell, wenn ich findutils-find anspreche geht es. Nach dem ich die DS neugestartet habe funktioniert es.

Gruss Martin
 

Martin_Egli

Benutzer
Mitglied seit
24. Jun 2010
Beiträge
29
Punkte für Reaktionen
0
Punkte
0
So sieht der Befel nun aus:

/opt/bin/find /usr/local/backup -depth -type d -empty -exec rmdir {} \;
 

m4d-maNu

Benutzer
Mitglied seit
09. Jan 2021
Beiträge
26
Punkte für Reaktionen
0
Punkte
7
Hallo,
geht diese Lösung eigentlich noch im Jahr 2021 mit einen aktuellen NAS? Denn ich finde keine IPKG kein "richtiges" was auch immer mit ein richtiges nun gemeint ist.

Wo anders habe ich was von findutils gelesen aber auch dazu finde ich keine IPKG fürn Synology NAS.
 

Ulfhednir

Benutzer
Sehr erfahren
Mitglied seit
26. Aug 2013
Beiträge
3.475
Punkte für Reaktionen
1.087
Punkte
194
Vielleicht für dich relevant - unter Windows nutze ich zum Löschen folgende Batch:
Code:
@echo off
rem ### Pfad, unter dem alle leeren Ordner geloescht werden sollen wird gesetzt ###

set /p pfad=Bitte den gewuenschten Pfad angeben:

echo Es wurde %pfad% als Pfad angegeben.

echo Starte Loeschvorgang von leeren Ordnern in %pfad%.


rem ### Temporaeres Verzeichnis c:\temp\ wird erstellt, falls es nicht schon existiert. ###

if not exist c:\temp\ md c:\temp\


rem ### Falls noch die Datei c:\temp\tmp.txt existiert, so wird sie geloescht. ###

if exist c:\temp\tmp.txt del /F /Q c:\temp\tmp.txt


rem ### Schreibe alle Ordnerpfade in c:\temp\tmp.txt. ###

dir /AD /b /s %pfad% >> c:\temp\tmp.txt


rem ### Loesche alle leeren Ordner. ###

FOR /F "delims=" %%i IN (c:\temp\tmp.txt) DO rd "%%i"

echo Es wurde alle leeren Ordner geloescht!


rem ### Loesche die temporaere Datei c:\temp\tmp.txt und ggf. den leeren Ordner c:\temp\ ###

if exist c:\temp\tmp.txt del /F /Q c:\temp\tmp.txt

if exist c:\temp\ rd c:\temp\


pause

Ob das Ganze über ein UNC-Pfad funktioniert, habe ich nicht probiert. Theoretisch sollte das Ganze aber als gemapptes Netzlaufwerk funktionieren.
 
  • Like
Reaktionen: m4d-maNu

m4d-maNu

Benutzer
Mitglied seit
09. Jan 2021
Beiträge
26
Punkte für Reaktionen
0
Punkte
7
Danke wäre eine Lösung, wenn auch keine so Optimale, da ich mehr am Mac bin als an meiner Windows Maschine. Da ich dazu aber auch mal mit Smartphone oder Tablet das löschen wollen würde, wäre es genial eine Lösung zu finden die mir das gleich im DSM ermöglicht.
 

stefan_lx

Benutzer
Mitglied seit
09. Okt 2009
Beiträge
2.766
Punkte für Reaktionen
74
Punkte
88
bei den aktuellen DSM-Versionen kann der find inzwischen auch den empty-Schalter ...
nur warum immer das "-exec rmdir.." angehängt wird, werde ich wohl nie verstehen.. (zum Löschen, schon klar, aber das kann find auch selber)

Stefan
 
Zuletzt bearbeitet:
  • Like
Reaktionen: m4d-maNu

m4d-maNu

Benutzer
Mitglied seit
09. Jan 2021
Beiträge
26
Punkte für Reaktionen
0
Punkte
7
Bei den aktuellen DSM-Versionen kann der find inzwischen auch den empty-Schalter ...
Da muss ich gestehen, dass ich dann wohl zu doof dafür bin. Denn sowohl in der FileStation als auch im UniversalSearch finde ich dazu nichts. Oder was genau meinst du mit der find hat in zwischen einen empty-Schalter?

Aber wieso kein "lösch mir leere Verzeichnisse Tool" mit GUI?
Wenn es da einen gibt, nehme ich auch das gerne. Ich habe bei meiner suche bis jetzt aber nichts gefunden.
 

stefan_lx

Benutzer
Mitglied seit
09. Okt 2009
Beiträge
2.766
Punkte für Reaktionen
74
Punkte
88
DSM ist nicht "nur" die GUI, sondern auch alles was für die Kommandozeile mitgeliefert wird und der mitgelieferte find kann jetzt auch so auf der Kommandozeile abgesetzt werden, wie im ersten Beitrag des Threads es versucht wurde... sowas wie find /volume1/GemeinsamerOrdner/ -empty -type d -delete

Für Windows gibt es z.B. Remove Empty Directories oder CFT... war jetzt nur eine schnelle Suche, ich kenne beides nicht, ich mach so was auf dem PC mit find ... :geek:

Stefan
 

stefan_lx

Benutzer
Mitglied seit
09. Okt 2009
Beiträge
2.766
Punkte für Reaktionen
74
Punkte
88
Clear Folder Tool... mehr weiß ich aber auch nicht :oops:

Habe gerade Corona Full Bottle gelesen :ROFLMAO:

Stefan
 

m4d-maNu

Benutzer
Mitglied seit
09. Jan 2021
Beiträge
26
Punkte für Reaktionen
0
Punkte
7
Habs nun ein bisschen weiter probiert aber bin da immer noch nicht wirklich weiter gekommen. Wo müsste ist das hier genau denn nun absetzten?
find /volume1/GemeinsamerOrdner/ -empty -type d -delete
Denn im DSM in der FileStation bringt mich das nicht weiter und im Universal Search auch nicht. Ich nutze zwar nun schon meinen 2ten Synology NAS habe aber bis dato sowas nicht benötigt und daher da nun ziemlich unbeholfen.


Edit:
Hab es nun zwar auch schon mal via SSH Zugriff gemacht aber eigentlich will ich den Port am NAS dafür nicht öffnen und mag es direkt auf den NAS eben machen. Da ich es dann eben wirklich von allen Endgeräten ohne großen Aufwand machen könnte.
 
Zuletzt bearbeitet:

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Der Aufgabenplaner kann mit Kommandos dieser Form umgehen. Aber bitte Vorsicht, man kann sich mit solchen Befehlen sehr schnell das System kaputt machen!

MfG Matthieu
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat