web-dev-qa-db-fra.com

Comment naviguer entre les répertoires du terminal?

Je suis nouveau sur Linux et Ubuntu et j'ai essayé de changer de dossier/répertoire avec quelques difficultés.

Quelqu'un pourrait-il expliquer pourquoi les commandes suivantes n'ont pas pu changer dans le dossier/répertoire cible souhaité?

sharon@sharon:~$ cd Home 
bash: cd: Home: No such file or directory 
sharon@sharon:~$ cd /Home 
bash: cd: /Home: No such file or directory 
sharon@sharon:~$ cd Documents 
sharon@sharon:~/Documents$ cd Downloads 
bash: cd: Downloads: No such file or directory 
sharon@sharon:~/Documents$ cd /Downloads 
bash: cd: /Downloads: No such file or directory 
sharon@sharon:~/Documents$
24
n00b

Le système de fichiers est GNU/Linux est comme une arborescence, sauf que la racine est sur le dessus. :-) Vous avez donc une structure comme:

/
  bin/
  home/
    sharon/
      Documents/
      Downloads/
      fileA.txt
      fileB.jpg
  usr/
  var/

Si vous souhaitez vous déplacer à l'intérieur de l'arborescence, une option consiste à utiliser des chemins relatifs. Si vous êtes dans /home/sharon, alors taper cd Downloads fonctionnera, car Downloads est un enfant immédiat de votre répertoire actuel. Si vous vous trouvez dans le sous-dossier Documents___ et que vous voulez changer de répertoire (cd__) en Downloadsname__, vous devez monter (..) puis en Downloadsname__. Donc, la commande correcte serait cd ../Downloads.

Vous pouvez également entrer un chemin absolu. Ainsi, le dossier Downloadsest un sous-dossier de sharonname__, qui est un sous-dossier de homequi correspond à… (vous avez l’idée :-)). Vous pouvez également entrer cd /home/sharon/Downloads où que vous soyez dans le système de fichiers.

  • ~ fait toujours référence au répertoire de base de l'utilisateur actuel (/home/sharon dans votre cas). Si vous entrez cd ~/Downloads, vous accéderez dans votre dossier Downloadsname__.

  • . fait référence au répertoire en cours, donc cd ./Downloads est à peu près équivalent à cd Downloads.

  • .. signifie "répertoire parent".

  • / au début du chemin du fichier fait référence au répertoire racine.

La prochaine chose intéressante est l'expansion de l'onglet. Si vous entrez cd ~/DowTab (le dernier appuie sur la touche Tabulator), le bash l’élargit automatiquement à cd ~/Downloads.

Comme d'autres l'ont dit, GNU/Linux est sensible à la casse. Cela fait donc une différence si vous entrez Homename__, hOmeou homename__. De plus, j'espère que vous voyez maintenant qu'il existe une différence entre /home et homename__. Le premier est adressé en absolu tandis que le dernier est relatif à votre répertoire actuel.

35
qbi
sharon@sharon:~$ cd Home 
bash: cd: Home: No such file or directory 

La petite cédille ~ indique que vous êtes déjà dans votre répertoire/home/sharon. Lorsque vous demandez "cd Home", le terminal recherche/home/sharon/Home. Il n'y en a pas.

sharon@sharon:~$ cd /Home 
bash: cd: /Home: No such file or directory 

Maintenant, vous demandez, étant donné la barre oblique, d'aller dans un répertoire au-dessus de l'emplacement actuel; c'est/home/Home. Il n'y en a pas.

sharon@sharon:~$ cd Documents 
sharon@sharon:~/Documents$

Succès!

sharon@sharon:~/Documents$ cd /Downloads 
bash: cd: /Downloads: No such file or directory 

Je ne sais pas trop où c'est. Si vous voulez changer de/home/sharon/Documents en/home/sharon/Téléchargements, veuillez essayer:

cd ~/Downloads

Si vous voulez aller directement à votre répertoire personnel, c'est-à-dire/home/sharon, faites simplement:

cd

Aussi, vous pouvez aller pas en arrière avec

cd ..

Et vous pouvez imprimer le répertoire dans lequel vous travaillez (imprimer le répertoire de travail)

pwd
8
chili555

La commande vous explique pourquoi: Il n’existe pas de tel répertoire.

Les noms de fichiers sont sensibles à la casse, donc c'est/home, pas/Home. Sans barre oblique, il est supposé être relatif au répertoire actuel et le répertoire Téléchargements ne se trouve pas dans ~/Documents, ni dans /, mais dans votre répertoire personnel, où ~ est un raccourci, donc ~/Documents.

3
psusi

Je dois répondre à cela, car je ne peux pas commenter les réponses -.-

Que signifie la barre oblique principale? - n00b

cela signifie que la fin dont vous parlez est un répertoire et non un fichier. Les fichiers ne doivent pas nécessairement se terminer comme Windows, donc ~/thisIsAFile serait un fichier de votre répertoire de base mais ~/thisIsAFile/ serait un répertoire/un dossier.

Que signifie? - n00b

Cela signifie que le fichier auquel vous souhaitez accéder se trouve dans votre répertoire actuel.

Autres astuces utiles:

Vous pouvez retourner un dossier avec

cd ..

Et vous pouvez obtenir le chemin dans lequel vous vous trouvez (répertoire de travail d'impression)

pwd
0
a2r