Unix / Linux-ディレクトリ管理

この章では、Unixでのディレクトリ管理について詳しく説明します。

ディレクトリは、ファイル名と関連情報を格納するための単独のジョブであるファイルです。通常、特殊、ディレクトリを問わず、すべてのファイルはディレクトリに含まれています。

Unixは、ファイルとディレクトリを整理するために階層構造を使用します。この構造は、ディレクトリツリーと呼ばれることがよくあります。ツリーには、単一のルートノードであるスラッシュ文字(/)、および他のすべてのディレクトリはその下に含まれています。

ホームディレクトリ

最初にログインしたときに自分がいるディレクトリは、ホームディレクトリと呼ばれます。

ファイルを整理するために作成するホームディレクトリとサブディレクトリで、多くの作業を行います。

次のコマンドを使用して、いつでもホームディレクトリに移動できます-

$cd ~
$

ここに ~ホームディレクトリを示します。他のユーザーのホームディレクトリに移動する必要がある場合は、次のコマンドを使用します-

$cd ~username
$

最後のディレクトリに移動するには、次のコマンドを使用できます-

$cd -
$

絶対/相対パス名

ディレクトリは、ルート(/)が上になる階層に配置されます。階層内のファイルの位置は、そのパス名で記述されます。

パス名の要素は/で区切られます。パス名は、ルートに関連して記述されている場合は絶対パス名であるため、絶対パス名は常に/で始まります。

以下は、絶対ファイル名の例です。

/etc/passwd
/users/sjones/chem/notes
/dev/rdsk/Os3

パス名は、現在の作業ディレクトリからの相対パスにすることもできます。相対パス名が/で始まることはありません。ユーザーamroodのホームディレクトリに関連して、一部のパス名は次のようになります-

chem/notes
personal/res

ファイルシステム階層内のどこにいるかをいつでも確認するには、コマンドを入力します pwd 現在の作業ディレクトリを印刷するには-

$pwd
/user0/home/amrood

$

ディレクトリの一覧表示

ディレクトリ内のファイルを一覧表示するには、次の構文を使用できます-

$ls dirname

以下は、に含まれるすべてのファイルを一覧表示する例です。 /usr/local ディレクトリ-

$ls /usr/local

X11       bin          gimp       jikes       sbin
ace       doc          include    lib         share
atalk     etc          info       man         ami

ディレクトリの作成

これで、ディレクトリの作成方法を理解できます。ディレクトリは次のコマンドで作成されます-

$mkdir dirname

ここで、directoryは、作成するディレクトリの絶対パス名または相対パス名です。たとえば、コマンド-

$mkdir mydir
$

ディレクトリを作成します mydir現在のディレクトリにあります。ここに別の例があります-

$mkdir /tmp/test-dir
$

このコマンドはディレクトリを作成します test-dir の中に /tmpディレクトリ。ザ・mkdir コマンドは、要求されたディレクトリを正常に作成した場合、出力を生成しません。

コマンドラインで複数のディレクトリを指定する場合は、 mkdir各ディレクトリを作成します。たとえば、−

$mkdir docs pub
$

現在のディレクトリの下にディレクトリdocsとpubを作成します。

親ディレクトリの作成

これで、親ディレクトリを作成する方法を理解できます。ディレクトリを作成するときに、その親ディレクトリが存在しない場合があります。この場合、mkdir 次のようなエラーメッセージを発行します-

$mkdir /tmp/amrood/test
mkdir: Failed to make directory "/tmp/amrood/test"; 
No such file or directory
$

そのような場合、あなたは指定することができます -p オプション mkdirコマンド。必要なすべてのディレクトリが作成されます。例-

$mkdir -p /tmp/amrood/test
$

上記のコマンドは、必要なすべての親ディレクトリを作成します。

ディレクトリの削除

ディレクトリは、を使用して削除できます rmdir 次のようにコマンド-

$rmdir dirname
$

Note −ディレクトリを削除するには、ディレクトリが空であることを確認します。これは、このディレクトリ内にファイルまたはサブディレクトリがないことを意味します。

次のように、一度に複数のディレクトリを削除できます-

$rmdir dirname1 dirname2 dirname3
$

上記のコマンドは、ディレクトリdirname1、dirname2、およびdirname3が空の場合、それらを削除します。ザ・rmdir 成功した場合、コマンドは出力を生成しません。

ディレクトリの変更

あなたは使用することができます cdホームディレクトリに変更する以上のことを行うコマンド。有効な絶対パスまたは相対パスを指定することにより、任意のディレクトリに変更するために使用できます。構文は次のとおりです-

$cd dirname
$

ここに、 dirname変更するディレクトリの名前です。たとえば、コマンド-

$cd /usr/local/bin
$

ディレクトリへの変更 /usr/local/bin。このディレクトリから、次のことができますcd ディレクトリへ /usr/home/amrood 次の相対パスを使用する-

$cd ../../home/amrood
$

ディレクトリの名前変更

ザ・ mv (move)コマンドを使用して、ディレクトリの名前を変更することもできます。構文は次のとおりです-

$mv olddir newdir
$

ディレクトリの名前を変更できます mydiryourdir 次のように-

$mv mydir yourdir
$

ディレクトリ。(ドット)と..(ドットドット)

ザ・ filename .(ドット)は現在の作業ディレクトリを表します。そしてそのfilename .. (ドットドット)は、現在の作業ディレクトリの1レベル上のディレクトリを表し、多くの場合、親ディレクトリと呼ばれます。

コマンドを入力して現在の作業ディレクトリ/ファイルのリストを表示し、 -a option すべてのファイルと -l option 長いリストを提供するために、次の結果を受け取ります。

$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
$