ターミナル内のディレクトリ間を移動するにはどうすればよいですか?


26

私はLinuxとUbuntuを初めて使いますが、フォルダー/ディレクトリに変更するのは少し困難です。

誰かが次のコマンドが目的のターゲットフォルダ/ディレクトリへの変更に失敗した理由を説明できますか?

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$

回答:


38

ファイルシステムはGNU / Linuxです。ルートが一番上にあることを除けば、ツリーのようなものです。:-)したがって、次のような構造になります。

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

ツリー内を移動する場合、1つのオプションは相対パスを使用することです。にいる場合、ダウンロードは現在のディレクトリの直接の子であるため/home/sharon、入力cd Downloadsは機能します。あなたがサブフォルダにいてDocuments、ディレクトリ(cd)を変更したいならDownloads、あなたは上(..)に移動しなければなりませんDownloads。したがって、正しいコマンドはになりますcd ../Downloads

絶対パスを入力することもできます。そのため、Downloadsフォルダはサブフォルダでsharonあり、そのサブフォルダhomeは…です(アイデアがわかります:-))。したがってcd /home/sharon/Downloads、ファイルシステムのどこにいても入力できます。

  • ~常に現在のユーザーのホームディレクトリを参照します(/home/sharonあなたの場合)。入力cd ~/Downloadsすると、Downloadsフォルダに移動します。

  • .は現在のディレクトリを参照するため、cd ./Downloadsとほぼ同等cd Downloadsです。

  • .. 「親ディレクトリ」を意味します。

  • / ファイルパスの先頭にあるルートディレクトリを指します。

次に便利なのはタブ拡張です。入力した場合cd ~/DowTab(最後はTabulatorキーを押す)、bashは自動的にそれをに展開しcd ~/Downloadsます。

他の人が言ったように、GNU / Linuxは大文字と小文字を区別します。だからHomehOmeまたはを入力すると違いが生じますhome。さらに、私は違いがあることをあなたが今見ていることを願ってい/homeとはhome。最初のものは絶対アドレス、最後のものは現在のディレクトリに関連しています。


1
@ qbi:すごいね。フォルダ/ディレクトリ間を移動する方法に関する詳細な説明が大好きです。あなたは教育機関の教師または教授ですか?ほとんどのITスタッフは多くのITスタッフを知っていますが、初心者が理解できるように概念を管理しやすい「消化可能な」チャンクに分解することは、あなたのようなほんの一握りの才能のあるスタッフのみが理解できます。
n00b

2
@ n00bこの回答が役立った場合は、左側のVをクリックして「受け入れる」ことができます。
Revetahwが復活モニカ言う

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

小さなセディラ〜は、すでに/ home / sharonディレクトリにいることを示しています。「cd Home」を要求すると、ターミナルは/ home / sharon / Homeを探します。なにもない。

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

ここで、先頭のスラッシュを指定して、現在の場所の上のディレクトリに移動するように求めています。それは/ home / Homeです。なにもない。

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

成功!

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

正確にこれがどこにあるのかはよくわかりません。/ home / sharon / Documentsから/ home / sharon / Downloadsに変更する場合は、次を試してください。

cd ~/Downloads

ホームディレクトリ、つまり/ home / sharonに直接移動する場合は、次のようにします。

cd

また、ステップバックすることができます

cd ..

そして、作業中のディレクトリを印刷できます(作業ディレクトリを印刷)

pwd

@ chili555:私のような初心者を助けてくれてありがとう。あなたとあなたの愛する人へのメリークリスマス。
n00b

2
先頭のスラッシュは、現在のディレクトリの上のパスではなく、ルートからの相対パスを示します。それは次のようになります../
psusi

3

このコマンドは、理由を示しています。そのようなディレクトリはありません。

ファイル名は大文字と小文字が区別されるため、/ Homeではなく/ homeです。先頭にスラッシュがない場合、それは現在のディレクトリに相対的であると想定され、ダウンロードディレクトリは〜/ Documentsにも/にもありません~が、ショートカットであるホームディレクトリにあるため、〜/です。ドキュメント。


@ psusi:あなたにも感謝します。あなたとあなたの愛する人へのメリークリスマス。
n00b

@ psusi:先頭のスラッシュはどういう意味ですか?
n00b

@ psusi:./ <filename>はどういう意味ですか?
n00b

@noobは/、ルートディレクトリから開始.することを意味し、現在のディレクトリを意味します。
psusi

0

私は答えにコメントできないので、これについて答えなければなりません-.-

先頭のスラッシュはどういう意味ですか?– n00b

それはあなたが話しているシンがファイルではなくディレクトリであることを意味します。ファイルは、Windowsのようにファイルの終わりを持っている必要はありません。したがって~/thisIsAFile、ホームディレクトリのファイルになります~/thisIsAFile/が、ディレクトリ/フォルダになります。

どういう意味?– n00b

これは、アクセスするファイルが現在のディレクトリにあることを意味します。

その他の役立つヒント:

フォルダーに戻ることができます

cd ..

そして、あなたがいるパスを取得することができます(作業ディレクトリを印刷)

pwd

@ a2r:説明をありがとう。Microsoft Windowsのように、ファイルにファイル拡張子がないことを知りませんでした。Ubuntuでもプログラムにはファイル拡張子がありますか?
n00b

一般に、システムはファイルの末尾を気にしません。実行可能としてマークされている場合(google about chmod)、プログラムとして実行できます。また、$ PATHというグローバル変数(Googleについて)があり、ビューディレクトリが保存されています(どのディレクトリにあるかを確認できますecho $PATH)。そしてgedit、ターミナルに入力するようなプログラムを実行しようとすると。システムは、$ PATH内のフォルダーをスローし、geditを検索します。
a2r

1
これは、先頭のスラッシュではなく、末尾のスラッシュになります。また、..。の前にスペースが必要です。
psusi

@ psusi:ごめんなさい。ここで少し混乱しています。末尾のスラッシュとは何ですか?スラッシュ?例は?前もって感謝します。
N00B
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.