ich möchte zu einer bestimmten Datei gehen, ohne danach suchen zu müssen, indem ich in alle Verzeichnisse gehe und „ls“ eingebe. Ich kenne den Dateinamen und möchte den Pfad nur mit dem Dateinamen. Bitte helfen Sie mir, ich bin neu in der Unix-Programmierung und möchte sie gründlich lernen. Außerdem habe ich Homebrew und iTerm (zsh) installiert. Danke.
Antwort1
Wenn Sie in Ihrem PATH eine ausführbare Datei suchen möchten, können Sie den which
folgenden Befehl verwenden:
$ which ls
/bin/ls
Wenn Sie eine Datei nach Namen suchen möchten, können Sie den folgenden find
Befehl verwenden. So finden Sie beispielsweise eine Datei mit dem Namen sample.txt
irgendwo in Ihrem aktuellen Verzeichnis oder einem beliebigen Unterverzeichnis:
$ find . -name sample.txt
./sample.txt
./temp/sample.txt
Im obigen Beispiel find
wurden zwei Dateien gefunden namenssample.txt
Sie können Platzhalter im Namen verwenden (denken Sie daran, den Namen in Anführungszeichen zu setzen, z. B. '*.txt'
) und es gibt viele weitere Optionen, um Ihre Suche einzugrenzen. Weitere Informationen finden Sie im find
Befehl:
$ man find
Antwort2
Ich gehe davon aus, dass Sie die Datei in einem Finder
Fenster sehen und in dieses Verzeichnis gelangen möchten, ohne einen langen Befehl eingeben zu müssen cd
.
Sie können eine Datei oder einen Ordner per Drag & Drop aus einem Finder
Fenster in ein Terminal.app
anderes ziehen: Dadurch wird der /path/to/file.name
Ausdruck an der Cursorposition durchgeführt.
Wenn ich also die Dateien eines Ordners auf meinem Desktop in einem Terminalfenster auflisten möchte, gebe ich zuerst den Namen ls -l
in das Terminal ein und ziehe dann den Ordner in das Terminal.app
Fenster.
[nevin-mac-mini:~/Desktop] nevin% ls -l /Benutzer/nevin/Desktop/Eclipse insgesamt 584 -rw-r--r--@ 1 nevin Mitarbeiter 126127 21. August 15:32 DSC_7956 (1).jpg -rw-r--r--@ 1 Nevin-Mitarbeiter 95940 21. August 15:50 DSC_7960.jpg -rw-r--r--@ 1 nevin Mitarbeiter 71307 24. August 08:42 DSC_8025.jpg drwxr-xr-x 5 nevin Mitarbeiter 170 23 Aug 18:19 veröffentlichen [nevin-mac-mini:~/Desktop] nevin%
Der Ordnername /Users/nevin/Desktop/Eclipse
wurde automatisch eingegeben, als ich das Ordnersymbol von meinem Desktop per Drag & Drop in mein Terminal.app
Fenster gezogen habe.
Antwort3
Es gibt eine App namens „Go2Shell“. Diese App platziert ein Symbol in Ihrem Finder-Fenster, das Sie beim Anklicken in ein Terminal- oder iTerm-Fenster zu demselben Verzeichnis führt. Wenn Sie also das Verzeichnis mit Ihrer Datei in einem Finder-Fenster anzeigen, öffnet ein Klick auf das Go2Shell-Symbol ein Terminalfenster zu diesem Verzeichnis.
Wenn Sie nur den Pfad zur Datei möchten, können Sie mit der rechten Maustaste auf die Datei klicken und die Optionstaste gedrückt halten. Eine der Optionen besteht darin, den Pfad zur ausgewählten Datei zu kopieren.
Eine andere Möglichkeit besteht darin, „locate filename“ in das Terminal einzugeben. Es wird der vollständige Pfad der Datei aufgelistet, sofern sie gefunden wird.