Diff of UNIX/基礎知識/パス


#navi(UNIX/基礎知識)
#contentsx

パスとは、直訳すれば「経路」のことです。目的地までにどのように行くのかを指定します。

*絶対、相対パス [#c3b466a7]

パスの指定方法には相対パスというものと絶対パスというものの2つがあります。
相対パスは、相対的に、つまりカレントディレクトリ(現在のディレクトリ)の場所からみた目的までの経路です。
逆に絶対パスは、絶対的に、つまりカレントディレクトリによらず常に同じように指定することができます。

例えば、
 /usr/local/bin
のようなパスのディレクトリがあるとします(普通は、実際あります)。
この指定法は絶対パスによる指定です。絶対パスでは、一番の大元である
というディレクトリへの移動を例に説明します。
相対パスと絶対パスの関係は実際に cd コマンドと pwd コマンドをつかってみるとわかりやすいと思います。

ではまずは絶対パスで移動してみましょう
 % cd /usr/local/bin
絶対パスでは、一番の大元である
 /
から始まります。この / ディレクトリをルートディレクトリと呼びます。
 % pwd
と打ち、現在ディレクトリの場所を確認してみてください。もちろん /usr/local/bin と表示されるはずです。

相対パスと絶対パスの関係は実際に cd コマンドと pwd コマンドをつかって
みるとわかりやすいと思います。

まず /usr/local ディレクトリに移動してみましょう。
次に相対パスで移動してみましょう。まずは /usr/local ディレクトリに移動してみましょう。
 % cd /usr/local
今は絶対パスで移動しました。次に、
ここは絶対パスで移動しました。次に相対パスで /usr/local/bin に移動します。カレントディレクトリ (/usr/local) からみた経路(パス)を指定します。
 % cd bin
と実行してください。今回は / から始まらないパスでしたので、
相対パスで移動したということになります。
今回は / から始まらないパスでしたので、相対パスで移動したということになります。
 % pwd
で確認してみてください。/usr/local/bin と出力されるはずです。
つまり、/usr/local からみた bin ディレクトリは絶対パスでみた
/usr/local/bin と同じものだということになります。
で確認してみてください。/usr/local/bin と出力され期待通りに /usr/local/bin に移動できたと思います。

ところで、
*カレント、親ディレクトリ [#w3e13994]

 .
はカレントディレクトリ、
 ..
は一つ上のディレクトリ(親ディレクトリ)を意味します。
現在いるディレクトリが /usr/local/bin ですので、

現在いるディレクトリが /usr/local/bin とした場合、
 % cd ..
と実行すると /usr/local がカレントディレクトリになります。
一度に、
 % cd ../..
のように指定することもできます。もちろん一度
 % cd ..
と親ディレクトリに移ってから、もう一度
 % cd ..
と指定しても同じですが、面倒です。
と指定しても同じです。
 % cd /usr/local/../local/bin
のように回りくどいことも可能です。これも /usr/local/bin を意味しますね。

*ホームディレクトリ [#c295a5d2]

また、
 ~
は絶対パスで自分のホームディレクトリを指します。
ホームディレクトリとはログインした際に最初にいるディレクトリのことです。
 ~[id]
は絶対パスでその [id] の人のホームディレクトリを指します。
 ~[ユーザ名]
は絶対パスでその [ユーザ名] の人のホームディレクトリを指します。ユーザ名は会津大学の場合学籍番号です。


#navi(UNIX/基礎知識,,footer)
xrea