Verzeichnisstruktur in Linux

294
Jael Gareau

Wenn Sie den lsBefehl ausführen, zeigen auf einem Linux-System immer die Zeiger .und die ..Zeiger auf das aktuelle bzw. das vorherige Verzeichnis. Ich verstehe, warum ..es nützlich ist, zum vorherigen Verzeichnis zurückzukehren, aber was genau ist das Dienstprogramm .?

0
Siehe diesen Thread: [Was sind einige Verwendungen von. (Einfache Periode) & .. (doppelte Periode) in der Shell-Befehlszeile] (http://unix.stackexchange.com/questions/118175/what-are-some-uses -of-single-period-double-period-in-the-shell-command) Behzad Sedighzadeh vor 7 Jahren 2

1 Antwort auf die Frage

2
TroyDowling

cdist nicht das einzige Dienstprogramm, das ein Verzeichnis als Operanden verwendet. Alle Vorgänge, die Sie auf das aktuelle Verzeichnis anwenden möchten, können den .Moniker verwenden.

So finden Sie eine Datei irgendwo im aktuellen Verzeichnis:

find . -name myfile -type f

Oder um Berechtigungen für alles im aktuellen Verzeichnis festzulegen:

chmod -R 755 .

Das sind nur zwei Beispiele, aber .und ..werden in großem Umfang sowohl verwendet, wenn Sie in einem Verzeichnis mit einem relativen Pfad betreiben wollen.

Ein letztes Beispiel, cdwenn Sie Ihr Erwähntes verwenden, wäre, wenn Sie eine lange Verzeichnisstruktur eingrenzen. Sie können das Tippen mit vermeiden ..

/foo/bar/my/dir/is/so/long $ pwd /foo/bar/my/dir/is/so/long /foo/bar/my/dir/is/so/long $ cd ./and/then/some/more /foo/bar/my/dir/is/so/long/and/then/some/more $ pwd /foo/bar/my/dir/is/so/long/and/then/some/more 
Außerdem bezieht sich `.` auf das aktuelle Verzeichnis. Wenn Sie also einen Befehl ausführen möchten, der sich nicht in Ihrem Systempfad befindet, sich aber in seinem Verzeichnis befinden, können Sie `./ schreiben.`und Ihre Shell würde es ausführen. headkase vor 7 Jahren 0
Wenn ich `cd other / directory` schreibe, fügt bash intern das Präfix`. / `Hinzu? Jael Gareau vor 7 Jahren 0