Forum: Administration, Konfiguration
Moderatoren: Herb, Martin ConradThema: Shell: Alle Files in einem Verzeichnis ansprechen
Shell: Alle Files in einem Verzeichnis ansprechen
icefire am 10.11.2009 um 14:48
Wenn ich in der Shell (in meinem Fall Bash) Kommandos als Argument * übergebe, wird der Stern durch beinahe alle Dateinamen ersetzt.
"Beinahe" deshalb, weil Dateien und Ordner die mit einem . beginnen ausgenommen werden.
Wenn ich aber .* als Argument übergebe, erhalten die Programme alle Dateien und Ordner die mit einem . beginnen, aber keine anderen.
Zusätzlich erhalten sie dann auch den Ordner ..
Das will ich auch nicht :/
Gibt es eine Möglichkeit einem beliebigen Programm "Alle Dateien und Ordner im aktuellen Ordner, inklusive alle mit .*, exklusive .." zu übergeben?
Die Google-Suche nach "Shell *" brachte mit zwar Informationen über diverse Ölkonzerne, aber nicht wonach ich gesucht habe
mfg, Wolfgang
--
Hex, Bugs and Rock 'n Roll
Re: Shell: Alle Files in einem Verzeichnis ansprechen
Martin Conrad (webmaster) am 10.11.2009 um 15:37
./dein prog `find . -maxdepth 1 ! -name ..`
Bis denne
Martin
--
0xC0FFEE
Re: Shell: Alle Files in einem Verzeichnis ansprechen
icefire am 11.11.2009 um 13:10
Danke, sowas hab ich gesucht!
mfg, Wolfgang
--
Hex, Bugs and Rock 'n Roll
Re: Shell: Alle Files in einem Verzeichnis ansprechen
iluminat23 am 05.02.2010 um 01:51
habe das grade mal mit den backticks versucht, dies hat zu problemen geführt.
ich habe du auf alle ferzeichnisse und dateien in meinem home anwnden wollen, dabei '.', '..' und 'mnt' ausgeschlossen und alles nach größe absteigend sortiert:
find . -maxdepth 1 ! -name .. ! -name mnt ! -name . -exec du -hs '{}' \;|sort -h
ok, in diesem fall wird du auf jedes verzeichnis einzeln angewendet, was bei mir auch beabsichtigt war.
hatte es mal ohne '{}' versucht, dann wurde du aber jedesmal auf '.' angewendet und nicht auf alle dateien zusammen. bin grade zu müde um es weiter zu versuchen, ich glaube, wenn es mit find möglich ist eine argumentenliste zu erstellen und dies direkt an das programm zu geben sollte das besser sein als dies über die shell zu machen.
gruß iluminat23
