Mittwoch, 6. September 2006

Linux Problem - bash: /bin/rm: Argument list too long

Enthält ein Verzeichnis mehrere Tausend Dateien, kann man sie nicht mehr so einfach mit dem Befehl rm löschen. Versucht man es dennnoch erhält man die Meldung:

- bash: /bin/rm: Argument list too long

Doch es gibt einen einfachen Trick um diesem Problem Herr zu werden.

Lösung für Argument list too long

Die Lösung zu dem Problem mit Argument list too long, ist das Programm xargs. Was ist xargs?

xargs - bildet Kommandozeilen aus der Standard-Eingabe und führt sie aus

Mit dem Programm xargs und find kann man nun alle Dateien eines Verzeichnises löschen. Der Befehl steht in Listing 1. Er baut sich folgendermaßen auf.

Mit dem Programm find suchen wir alle Dateien, das macht der Schalter -type f. Das Argument -print0 hängt jedem Dateinamen ein Nullbyte hintendran. Die Pipe | übergibt nun das Ergebnis an xargs. Der Schalter -0 bestimmt, dass jede Datei mit einem Nullbyte endet. Schliesslich wird das finale Löschkommando mit dem Befehl rm ausgeführt.



Listing 1

Download Code!

  1.  
  2. find -type f -print0 | xargs -0 rm
  3.  
Bewertung: keine, 0 Stimme(n) 5457 Klicks
Tips
Von Mr.Foo in Tips am 06.09.06@10:33 Uhr

Verwandte Links:

  • bash /bin/rm Die Argumentliste ist zu lang

Trackbacks
Trackback für spezifische URI dieses Eintrags

Die Argumentliste ist zu lang / Argument list too long
Wer schon einmal auf der Konsole versucht hat den Inhalt eines Ordners, der sehr viele Dateien enthält, zu löschen, dem wird die Fehlermeldung bekannt vorkommen. Auf der Konsole lässt sich der Inhalt eines Ordners in der Regel relativ trivial mittels fo
Weblog: 50226 - Witi's Blog
Aufgenommen: Mär 08, 12:48

7 Kommentare
Ansicht der Kommentare: (Linear | Verschachtelt)

Felix - #1 - 08.08.2008 06:21 - (Antwort)

Ja stimmt, dass nützt! Jetzt ist die Fehlermeldung "xargs: Argument list too long", nicht mehr "rm: Argument list too long"

Mr. Foo - #1.1 - 08.08.2008 11:04 - (Antwort)

Wie lautet den der Befehl, denn du ausführst?

printer - #1.2 - 03.02.2009 23:05 - (Antwort)

danke hat geholfen.

Martin - #2 - 16.02.2010 13:53 - (Antwort)

Super danke hat bestens geklappt damit 30.000 Dateien auf einen Rutsch zu löschen.

:-)

Klugscheißer - #3 - 09.06.2011 17:20 - (Antwort)

Wie wäres es hiermit? :-)

find -type f -delete

Anneliese - #4 - 03.08.2011 18:58 - (Antwort)

Weiss vielleicht jemand, wie viele Argumente die Kommandos maximal verarbeiten können, bevor diese Fehlermeldung kommt?

Mr. Foo - #4.1 - 05.08.2011 18:45 - (Antwort)

Hallo Anneliese,

bei mir sind es 131072 Argumente. Um herauszufinden wie viele es bei dir sind, kannst du auf der Shell folgendes Kommando eingeben:

getconf ARG_MAX


Kommentar schreiben

Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
Sie können [geshi lang=LANG][/lang] Tags verwenden um Quellcode abhängig von der gewählten Programmiersprache einzubinden
 
 

Mr. Foo

Linux Problem - bash: /bin/rm: Argument list too long

  • Homepage

Suche

Kategorien

  • C-Sharp (4)
  • Datenbank (28)
  • Delphi (2)
  • Entwicklung (36)
  • Flash (5)
  • Games (10)
  • Gutscheine (4)
  • Hardware (14)
  • HTML CSS (15)
  • Internet (87)
  • Java (32)
  • Javascript (24)
  • Linkdump (9)
  • Linux (95)
  • Low-Level (10)
  • Lua (8)
  • Musik (9)
  • Netzwerk (25)
  • New World Order (109)
  • Perl (3)
  • PHP (123)
  • Magento (5)
  • Symfony (3)
  • Zend Framework (7)
  • Probleme und Lösungen (26)
  • Python (22)
  • Ressourcen (23)
  • Sicherheit (91)
  • Software (58)
  • Sonstiges (45)
  • Own Stuff (46)
  • Spass (45)
  • Technik / Wissenschaft (4)
  • Tips (15)
  • Weisheiten (16)
  • Windows (23)
  • Wort des Tages (15)


Alle Kategorien

Archive

  • Februar 2012
  • Januar 2012
  • Dezember 2011
  • Das Neueste ...
  • Älteres ...

Abonnieren lohnt sich!

  • XML RSS 2.0 feed
  • ATOM/XML ATOM 1.0 feed
  • XML RSS 2.0 Kommentare

Tagcloud

Datenbank Entwicklung Internet Java Javascript Linux Lösung Netzwerk News New World Order PHP Problem Probleme und Lösungen Python Sicherheit Software Sonstiges Spass Tipp Update

Beliebte Einträge

  • Magento ist scheisse (188)
  • Plugin-container.exe deaktivieren (101)
  • C compiler cannot create executables unter Debian (53)
  • BWin Betrug und Abzocke bei Minigames? (49)
  • Scheiss Linux - USB-Platte viel zu langsam (wenns mal funktioniert) (41)
  • Sicheres Kontaktformular mit PHP - Spam verhindern (37)
  • Es konnte keine TCP/IP-Verbindung mit dem Host hergestellt werden (26)
  • UML-Diagramme aus Java-Klassen generieren – Java2UML (25)
  • Option Bug im Internet Explorer bei Nutzung von innerHTML und Javascript (24)
  • Zend Studio - Javaw.exe lastet die CPU aus (24)

Kommentare

sandi zu Plugin-container.exe deaktivieren
Mo, 06.02.2012 11:10
Leider hat es nicht geklappt. Jetz [...]
Frank zu Magento ist scheisse
So, 05.02.2012 21:58
Seit etwa 6 Monaten bin ich auf de [...]
hansie zu Canon Blink Codes
Sa, 04.02.2012 19:49
Hallo, mein Canon Drucker MP 630 [...]
Bachsau zu Scheiss Linux - USB-Platte viel zu langsam (wenns mal funktioniert)
Mi, 01.02.2012 22:54
Bei Linux machen die Kernel-Entwic [...]
Mr. Foo zu Scheiss Linux - USB-Platte viel zu langsam (wenns mal funktioniert)
Mi, 01.02.2012 21:47
Also so kurz mal probiert hab ich [...]
 

Kontakt/Informationen