Contents
Unix / Linux – ディレクトリ管理
ではこの賞でディレクトリつまりはファイル管理について説明をして行こうと思います。
ディレクトリは、ファイル名と関連情報を格納するためのソロジョブつまりは我々が使っているフォルダのことをさします。
Unixはファイルとディレクトリを整理するために階層構造を使います。この構造は、しばしばディレクトリツリーと呼ばれます。ツリーには、単一のルートノード、スラッシュ文字(/)、およびその他のすべてのディレクトリがその下に含まれています。
ホームディレクトリ
最初にログインしたときのディレクトリをホームディレクトリと呼びます。
ファイルを整理するために作成するホームディレクトリとサブディレクトリで、多くの作業を行います。
次のコマンドを使用して、いつでもホームディレクトリに移動できます。
$cd ~
$
ここで〜はホームディレクトリを示します。他のユーザのホームディレクトリに移動しなければならないと仮定して、次のコマンドを使用します。
$cd ~username
$
最後のディレクトリに移動するには、次のコマンドを使用します。
$cd - $
絶対/相対パス名
ディレクトリは、最上位にルート(/)を持つ階層に配置されています。階層内のファイルの位置は、パス名で記述されます。
パス名の要素は、/で区切られます。パス名は絶対パスで記述されていれば絶対パスであるため、絶対パス名は常に/で始まります。まあ当たり前ですが。
絶対ファイル名の例を次に示します。例えばインターネットのアドレスも絶対パスで書かれてますよね。あと Windowsのファイルアドレスとかもですね。あれです
/etc/passwd /users/sjones/chem/notes /dev/rdsk/Os3
パス名は、現在の作業ディレクトリからの相対パスでもかまいません。
chem/notes personal/res
ファイルシステム階層内のどこにいるかを確認するには、コマンドpwdを入力して現在の作業ディレクトリを表示します。
$pwd /user0/home/amrood $
ディレクトリの一覧表示
ディレクトリ内のファイルを一覧表示するには、次の構文を使用できます。
$ls dir
以下は、/ usr / localディレクトリに含まれているすべてのファイルを一覧表示する例です。
$ls /usr/local X11 bin gimp jikes sbin ace doc include lib share atalk etc info man ami
ディレクトリの作成
ここでディレクトリの作成方法を理解します。ディレクトリは次のコマンドで作成されます。
$mkdir dir
覚え方としてはmake directoryの頭文字を取っている感じですね。KBTITみたいな感じです。
ここで、dirの名前は作成するディレクトリの絶対パス名または相対パス名です。たとえば、コマンド –
$mkdir mydir $
mkdir つまりはメイクディレクトリ(ファイルを作る)ということになります。
現在のディレクトリにディレクトリmydirを作成します。
また以下は別の例になります。
$mkdir /tmp/test-dir $
このコマンドは、ディレクトリtest-dirを/ tmpディレクトリに作成します。しかしこれでは生成はできません。
別の例としてコマンドラインで複数のディレクトリを指定すると、mkdirはそれぞれのディレクトリを作成します。たとえば、 –
$mkdir docs pub $
現在のディレクトリの下にディレクトリdocsとpubを作成します。
親ディレクトリの作成
ディレクトリを作成する場合、その親ディレクトリが存在しないことがあります。この場合、mkdirは次のようなエラーメッセージを出します。
$mkdir /tmp/amrood/test mkdir: Failed to make directory "/tmp/amrood/test"; No such file or directory $
このような場合は、mkdirコマンドに-pオプションを指定できます。
$mkdir -p /tmp/amrood/test $
上記のコマンドは、必要なすべての親ディレクトリを作成できるようになります。x
ディレクトリの削除
ディレクトリは、次のようにrmdirコマンドを使用して削除できます。
$rmdir dirname $
注 – ディレクトリを削除するには、ディレクトリが空であることを確認します。これは、このディレクトリ内にファイルまたはサブディレクトリが存在しないことを意味します。
次のように、一度に複数のディレクトリを削除することができます –
$rmdir dirname1 dirname2 dirname3 $
上記のコマンドは、ディレクトリdirname1、dirname2、およびdirname3が空の場合は削除します。rmdir、それが成功した場合、コマンドは出力を生成しません。
ディレクトリの変更
cdコマンドを使用すると、単にホームディレクトリに変更する以外のことを行うことができます。有効な絶対パスまたは相対パスを指定することにより、任意のディレクトリに変更することができます。構文は以下のとおりです –
$cd dirname $
ここで、dirnameは変更したいディレクトリの名前です。たとえば、コマンド –
$cd /usr/local/bin $
/ usr / local / binディレクトリーへの変更。このディレクトリから、次の相対パスを使用して/ usr / home / amroodディレクトリにcdできます。
$cd ../../home/amrood $
ディレクトリ名の変更
MV(移動)コマンドは、ディレクトリの名前を変更するために使用することができます。構文は次のとおりです。
$mv olddir newdir $
olddirが現在のディレクトリの名前、newが新しくつける名前を表してます。
ディレクトリmydirの名前を次のようにoriginaldirに変更できます。
$mv mydir originaldir $
ディレクトリ
.(ドット)と..(ドットドット)
ファイル名.(ドット)は現在の作業ディレクトリを表します。
ファイル名..(ドットドット)は、
多くの場合、親ディレクトリと呼ばれる現在の作業ディレクトリ上のディレクトリあるレベルを表します。
現在の作業ディレクトリ/ファイルの一覧を表示するコマンドを入力し、すべてのファイルを一覧表示する-aオプションと長いリストを提供する-lオプションを使用すると、次の結果が表示されます。
$ls -la drwxrwxr-x 4 teacher class 2048 Jul 16 17.56 . drwxr-xr-x 60 root 1536 Jul 13 14:18 .. ---------- 1 teacher class 4210 May 1 08:27 .profile -rwxr-xr-x 1 teacher class 1948 May 12 13:42 memo $