昨日からLinuxを学び始めました。私の本やGoogleで答えることができない質問があります。殻の中にある./
ことの違いは何ですか?/
私がこの質問をするのは、コマンドを実行すると./home/yogesh/Desktop/Books
次のエラーが発生するためです。
bash: ./home/yogesh/Desktop : No such file or directory
しかし、ポイントを削除すると
/home/yogesh/Desktop/Books : Is a directory
または実行すると/Desktop
返されます。
/Desktop : No such file or directory
/
しかし、私が得る前にポイントを追加すると
./Desktop: is a directory
./
これらとそしての違いは何ですか/
?
答え1
Unixでは(Windowsと同様に)/foo
ファイルまたはディレクトリの場所です(絶対、ルートから始まります)/
。./foo
相対位置(現在のディレクトリ基準)の代わりにfoo
。
/Desktop
または、コマンドを入力して./Desktop
実行できないデスクトップを実行するようにシェルに指示することもできます。
/Desktop
存在しないため、エラーメッセージが表示されます。
しかし、./Desktop
絶対的な位置は/Home/YOURNAME/Desktop
存在します。ただし、実行可能ファイルではなくディレクトリです...実行したいコマンドのプレフィックス(通常cd
またはls
)を忘れた可能性があります。
答え2
説明例:
/
(スラッシュ) はファイルシステムルートのルートを意味します。そのため、/home/yogesh/Desktop/Books
ルートから始めて確認home
、home
確認yogesh
などを行います。これを絶対パスといいます。
.
(ドット)は、現在のディレクトリから始まるという意味です。したがって、現在のディレクトリがあり、/home/yogesh
を選択した場合は./Desktop
そこにあります。これを相対パスといいます。
答え3
Unix および Unix 系では、.
現在のディレクトリを表します。たとえば、現在のディレクトリの内容がls .
一覧表示されます。ls
したがって、これを./Desktop
コマンドとして使用すると、Desktop
現在のディレクトリの下でそのディレクトリが見つかります。これにより、これはディレクトリなので、コマンドではないため実行できないというエラーメッセージが表示されます。
/
ファイルシステムのルートです。C:\
Windowsでも同様です。を実行すると、/Desktop
システムはDesktop
そのディレクトリ内でその名前のディレクトリを探します/
。存在しないと教えてくれます。
たとえば、私がいる場所に/home/yogesh
移動するには、/home/yogesh/Desktop
相対パス(現在のディレクトリベース)を使用してまたはをcd ./Desktop
実行するcd Desktop
か、絶対パスを使用してを実行できますcd /home/yogesh/Desktop
。
答え4
最初のものは相対的な位置にしてはいけません。
相対位置は現在位置より短い。絶対位置は、Linuxの最初のディレクトリの場所であるroot /で始まります。 /var にない場合に使用できます。
cd /var/www
/var/www は絶対位置です。 /varにある場合は、次のものを使用できます。
cd ./www
または
cd www
短くチョークで書いてください。
William Shotsの無料電子ブックをお勧めします。
電子書籍リンクは次のとおりです。