Grep e xargs: il nome del file è troppo lungo

Sto cercando di eliminare tutti i file che non iniziano con __ . Questo

 ls | grep -v "__" | xargs -0 rm 

Rendi : File name too long . Qualsiasi aiuto?

  • Perché i file system montati senza opzioni ACL rispettano ancora gli ACL POSIX?
  • C'è un modo per aggiungere tutti i file e le directory che sono intriggersti ​​al repository SVN?
  • Come posso imparare quali ip sono sul server lps vps?
  • Svantaggio di Damn Small Linux come server Web
  • corosinccio legato a 127.0.0.1 anziché interface corretta
  • Qual è la differenza tra "path" e "path ip"?
  • EDIT:

     ls | grep -v "__" | awk '{print("rm \42"$0"\42")}' | /bin/bash 

    risolve il problema, ma vorrei sapere perché il primo non è corretto. Grazie

    One Solution collect form web for “Grep e xargs: il nome del file è troppo lungo”

    -0 argomento -0 e risolverà questo problema. l'arg argomando a xargs dice che le voci dell'elenco di input sono null terminate. Non lo fai, stai passando le righe terminate da un carattere \n .

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.