> Unix / Linux 入門 ファイル管理 – ネットワークエンジニアチュートリアル

Unix / Linux 入門 ファイル管理

Unix / Linux 入門 ファイル管理


この章では、Unixでのファイル管理について詳しく説明します。Unixのすべてのデータはファイルにより編成されて、ディレクトリにて編成されています。これらのディレクトリは、ファイルシステムと呼ばれるツリー状の構造に編成されています。

あなたはUnixを使って作業するとき、ファイルを扱うのに多くの時間を費やします。このチュートリアルでは、ファイルの作成と削除、ファイルのコピーと名前の変更、リンクの作成などを理解するのに役立ちます。

Unixには、3つの基本的な種類のファイルがあります。

  • 通常ファイル - 通常のファイルとは、データ、テキスト、またはプログラム命令を含むシステム上のファイルのことです。このチュートリアルでは、通常のファイルを扱う方法を確認をしていきます。
  • ディレクトリ - ディレクトリは特別なファイルと普通のファイルの両方を格納することができます。WindowsまたはMac OSに精通しているユーザにとって、Unixディレクトリはフォルダと同じ意味と考えましょう。
  • 特殊ファイル - 一部の特殊ファイルは、ハードドライブ、CD-ROMドライブ、モデム、イーサネットアダプタなどのハードウェアへのアクセスを提供します。例えばCDならISOファイルなんてものもありますね。特殊ファイルはショートカットに似ており、異なる名前を使用して1つのファイルにアクセスすることを可能にします。

ファイルを一覧表示する


まずディレクトリをなんとなく絵で確認してみましょう

 

例えばhomeがあってそのしたの階層にファイルがあります。例えばウインドウズではこれを右クリックしてファイルを作りますがリナックスではこれをコマンドを作ります

 

 

 

現在のディレクトリ(階層)に格納されているファイルとディレクトリを一覧表示するには、次のコマンドを使用します。

$ls

上記のコマンドの出力例を次に示します。

$ls

bin        hosts  lib     res.03
ch07       hw1    pub     test_results
ch07.bak   hw2    res.01  users
docs       hw3    res.02  work

lsコマンドは、-lオプションをサポートしています。これは、リストされたファイルに関する詳細情報を得るのに役立ちます。

$ls -l
total 1962188
 第一列      第二列  、、、、、、、、、
drwxrwxr-x  2   amrood amrood      4096 Dec 25 09:59 uml
-rw-rw-r--  1   amrood amrood      5341 Dec 25 08:38 uml.jpg
drwxr-xr-x  2   amrood amrood      4096 Feb 15  2006 univ
drwxr-xr-x  2   root   root        4096 Dec  9  2007 urlspedia
-rw-r--r--  1   root   root      276480 Dec  9  2007 urlspedia.tar
drwxr-xr-x  8   root   root        4096 Nov 25  2007 usr
drwxr-xr-x  2    200    300      4096 Nov 25  2007 webthumb-1.01
-rwxr-xr-x  1   root   root        3192 Nov 25  2007 webthumb.php
-rw-rw-r--  1   amrood amrood     20480 Nov 25  2007 webthumb.tar
-rw-rw-r--  1   amrood amrood      5654 Aug  9  2007 yourfile.mid
-rw-rw-r--  1   amrood amrood    166255 Aug  9  2007 yourfile.swf
drwxr-xr-x 11   amrood amrood      4096 May 29  2007 zlib-1.2.3
$

列挙されたすべての列に関する内容は以下になります。

  • 最初の列 – ファイルの種類とそのファイルに与えられたアクセス許可を表します。以下は、すべてのタイプのファイルの説明です。
  • 第2列 – ファイルまたはディレクトリが使用するメモリブロックの数を表します。
  • 3列目 – ファイルの所有者を表します。これは、このファイルを作成したUnixユーザです。
  • 第4列 – 所有者のグループを表します。すべてのUnixユーザには関連グループがあります。
  • Fifth Column – ファイルサイズをバイト単位で表します。
  • 第6列 – このファイルが最後に作成または変更された日付と時刻を表します。
  • 第7列 – ファイルまたはディレクトリ名を表します。

メタキャラクター


メタキャラクタはUnixでは特別な意味を持っています。ls はファイル検索、あとは名前を検索しているようなイメージ。

例 –

$ls ch*.doc

すべてのファイルでCHDOCで終わるものを探しに行っているということです。

ch01-1.doc   ch010.doc  ch02.doc    ch03-2.doc 
ch04-1.doc   ch040.doc  ch05.doc    ch06-2.doc
ch01-2.doc ch02-1.doc c

ここで*は、任意の文字と一致するメタ文字として機能します。単に.docで終わるすべてのファイルを表示する場合は、次のコマンドを使用できます。

$ls *.doc

隠しファイル


目に見えないファイルは1で、最初の文字はドットまたはピリオド(。)です。UNIXプログラム(シェルを含む)は、これらのファイルの大部分を使用して構成情報を格納します。

隠しファイルの一般的な例には、ファイル –

  • .profile - Bourneシェル(sh)初期化スクリプト
  • .kshrc - Kornシェル(ksh)初期化スクリプト
  • .cshrc - Cシェル(csh)初期化スクリプト
  • .rhosts - リモートシェル設定ファイル

不可視ファイルを一覧表示するにはls -a を選択してください

$ ls -a

.         .profile       docs     lib     test_results
..        .rhosts        hosts    pub     users
.emacs    bin            hw1      res.01  work
.exrc     ch07           hw2      res.02
.kshrc    ch07.bak       hw3      res.03
$
  • シングルドット(。) – 現在のディレクトリを表します。
  • ダブルドット(..) – 親ディレクトリを表します。

ファイルの作成


viエディタを使って、Unixシステム上にファイルを作成することができます。次のコマンドを入力するだけです。

$ vi filename

上記のコマンドは、指定されたファイル名でファイルを開きます。今度は、キーiを押して編集モードに入ります。編集モードに入ると、次のプログラムのようにファイルにコンテンツを書き込むことができます。

This is unix file....I created it for the first time.....
I'm going to save this content in this file.

プログラムを終了したら、次の手順を実行します。

  • 編集モードを終了するには、キーescを押します。
  • 2つのキーShift + ZZを押してファイルから完全に抜け出す。

これで、現在のディレクトリにfilenameで作成されたファイルが作製されます。

ここでは簡単に触れておきます。

$ vi filename
$

ファイルの編集


viエディタを使用して既存のファイルを編集できます。既存のファイルを開く方法を簡単に説明します。

$ vi filename

ファイルを開くと、キーiを押して編集モードに入り、ファイルを編集することができます。ファイル内を移動する場合は、まずEscキーを押して編集モードを終了する必要があります。その後、次のキーを使ってファイル内を移動することができます。

  • 左に移動するにはlキーを押します。
  • hキーを押すと左側に移動します。
  • kキーを押してファイル内を上に移動します。
  • jキーを押してファイルの下側に移動します。

したがって、上記のキーを使用して、編集する場所にカーソルを置くことができます。一度配置されると、iキーを使用して編集モードに入ります。ファイルの編集が終わったら、Escキーと最後に2つのShift + ZZキーを押してファイルから完全に抜け出します。

ファイルの内容を表示する


catコマンドを使用すると、ファイルの内容を見ることができます。以下は、上記で作成したファイルの内容を表示する簡単な例です。

$ cat filename
This is unix file....
$

行番号を表示するには、-bオプションとcatコマンドを次のように使用します。

$ cat -b filename
1   This is unix file....

ファイル内の単語数をカウントする


wcコマンドを使用すると、ファイルに含まれる行、単語、および文字の総数を取得できます。以下は、上で作成したファイルに関する簡単な例です。

$ wc filename
2  19 103 filename
$

ここに4つの列すべての詳細があります。

  • First Column – ファイル内の行の総数を表します。
  • 第2列 – ファイル内の単語の総数を表します。
  • 第3列 – ファイル内の合計バイト数を表します。これはファイルの実際のサイズです。
  • 第4列 – ファイル名を表します。

複数のファイルを指定して、それらのファイルに関する情報を一度に取得することができます。以下は単純な構文です –

$ wc filename1 filename2 filename3

ファイルのコピー


ファイルのコピーを作成するには、cpコマンドを使用します。コマンドの基本的な構文は次のとおりです。

$ cp source_file destination_file

次に、既存のファイルfilenameのコピーを作成する例を示します

$ cp filename copyfile
$

現在のディレクトリに1つ以上のファイルcopyfileがあります。このファイルは元のファイルとまったく同じです。

ファイルの名前を変更する


ファイルの名前を変更するには、mvコマンドを使用します。以下は基本的な構文です –

$ mv old_file new_file

次のプログラムは、既存のファイルnewfileに変更します。

$ mv filename newfile
$

MVコマンドは、新しいファイルに完全に既存のファイルを移動します。この場合、現在のディレクトリにはnewfileしか見つかりません。

ファイルの削除


既存のファイルを削除するには、rmコマンドを使用します。以下は基本的な構文です –

$ rm filename

注意 – ファイルには有用な情報が含まれている場合があります。この削除コマンドを使用している間は、常に注意することをお勧めします。rmコマンドと一緒に-iオプションを使用する方が良いでしょう。

以下は、既存のファイルfilenameを完全に削除する方法を示す例です。

$ rm filename
$

以下のコマンドで一度に複数のファイルを削除することができます –

$ rm filename1 filename2 filename3
$

前のページ

次のページ

スポンサーリンク

ネットワークエンジニアになりたければ下記から無料相談会に参加!
なんと無料で授業を受けれてエンジニアになれます

投稿日:2017-10-10 更新日:

執筆者: