2016-06-03 23 views
4

Wenn der Befehl ls den Inhalt eines Verzeichnisses auflistet, würde eine Ausgabe an ls <directory darauf hindeuten, dass ein Verzeichnis existiert.Warum funktioniert ls ~/.ssh, aber nicht cd ~/.ssh?

Zum Beispiel ist es das, was ich bekommen:

> ls ~/.ssh 
id_rsa id_rsa.pub known_hosts 

Aber warum dann, wenn ich cd ~/.ssh geben bekomme ich

> cd ~/.ssh 
The system cannot find the path specified. 

?

Warum kann ich den Inhalt dieses Verzeichnisses auflisten, aber nicht dorthin navigieren?

Ich verwende Windows 8

+5

Sie verwenden 'ls' auf Windows 8? –

+0

Vielleicht kann Ihnen das helfen? http://stackoverflow.com/questions/26748579/cd-command-wont-change-directory-comand-prompt – kayla210

+0

CodyBugstein..Wat OS verwenden Sie seine Win oder Linux? –

Antwort

6

Diese Antwort ist unter der Annahme, dass Sie die Eingabeaufforderung verwenden, um diese Befehle auszuführen.

Der Grund, dass Sie das Verzeichnis aber nicht cd es ls können, weil der ls Befehl aus einer Bibliothek kommt, die Sie, dass ls Arbeit auf Windows heruntergeladen machen.

Im Gegensatz dazu wird Ihr cd Befehl von Windows ausgeführt, nicht von der Bibliothek, die Sie heruntergeladen haben.

Kurz gesagt, ls kann die Tilde (~) als Startseite analysieren, aber Windows weiß nicht, wie man ~ analysiert. versuchen Sie es: cd ~. Es wird nicht funktionieren.

+0

Ah ok Ich kann mich nicht erinnern, etwas für 'ls' heruntergeladen zu haben. Wie kann ich das gleiche für 'cd' machen? – CodyBugstein

+0

Kannst du mir helfen, herauszufinden, welches "ls" Programm ich habe? – CodyBugstein

+0

Nun, ich würde empfehlen, Ihre Umgebung zu konsolidieren. Da Sie versuchen, Unix-Befehle zu verwenden, verwenden Sie [Cygwin] (https://www.cygwin.com/). Mischen Sie nicht verschiedene ausführbare Dateien zwischen Linux und Windows. Verwenden Sie keine Eingabeaufforderung, wenn Sie Unixbefehle verwenden wollen :) – sircapsalot