Verständnisfrage zum Thema * auf der Konsole
Nils Kassube
kassube at gmx.net
Mit Jan 9 22:25:30 GMT 2008
Frank Becker wrote:
> ich hatte nun das Vergnügen, die BenutzerIDs der Homeverzeichnisse zu
> ändern. Also gab ich ein:
> # cd /home
> # chown -R frank.frank frank
Fehlt da nicht ein sudo?
> Jetzt hat chown bei alle Dateien Owner und Group geändert. Aber nicht
> bei den versteckten Dateien.
Das kann ich hier nicht nachvollziehen.
> Gut, dafür sind diese ja auch versteckt.
> Als ich nun aber mit
> # cd frank
> # chown frank.frank *
>
> alle Dateien ändern wollte, wurden die versteckten Dateien nicht
> beeinflußt.
>
> Jetzt mein Verständnisproblem: Das Sternchen * steht doch für "Alle
> Zeichen in beliebiger Anzahl". Warum muss ich denn die
> Hidden-Verzeichnisse extra noch mal "anfassen"?
>
> Oder habe ich da den Sinn des * falsch verstanden?
Jein :) Also ein "*" als erstes Zeichen für Dateinamen gilt für alle nicht
versteckten Dateien. Sonst hättest du auch ein kleines Problemchen,
denn "alle Dateien" in einem Verzeichnis beinhaltet auch immer "./"
und "../". DIE willst du aber ganz sicherlich nicht löschen, wenn du
ein "rmdir *" verwendest. Dabei muss man schließlich daran denken, dass
das aufgerufene Programm nicht das "*" übergeben bekommt, sondern die von
der Shell daraus generierte Liste der Dateien.
Nils