Unix-file-management
Unix/Linux-ファイル管理
この章では、Unixでのファイル管理について詳しく説明します。 Unixのすべてのデータはファイルに編成されます。 すべてのファイルはディレクトリに編成されます。 これらのディレクトリは、ファイルシステムと呼ばれるツリー状の構造に編成されています。
何らかの方法でUnixを使用する場合、ほとんどの時間をファイルの処理に費やします。 このチュートリアルは、ファイルの作成と削除、コピーと名前の変更、ファイルへのリンクの作成などを理解するのに役立ちます。
Unixでは、ファイルの3つの基本的なタイプがあります-
- 通常のファイル-通常のファイルは、データ、テキスト、またはプログラムの命令を含むシステム上のファイルです。 このチュートリアルでは、通常のファイルの操作について説明します。
- ディレクトリ-ディレクトリには、特別なファイルと通常のファイルの両方が保存されます。 WindowsまたはMac OSに精通しているユーザーにとって、Unixディレクトリはフォルダーと同等です。
- 特殊ファイル-一部の特殊ファイルは、ハードドライブ、CD-ROMドライブ、モデム、イーサネットアダプターなどのハードウェアへのアクセスを提供します。 他の特殊ファイルはエイリアスまたはショートカットに似ており、異なる名前を使用して単一のファイルにアクセスできます。
リストファイル
現在のディレクトリに格納されているファイルとディレクトリを一覧表示するには、次のコマンドを使用します-
上記のコマンドの出力例は次のとおりです-
コマンド ls は、リストされたファイルに関する詳細情報を取得するのに役立つ -l オプションをサポートします-
ここにリストされているすべての列に関する情報があります-
最初の列-ファイルタイプとファイルに与えられた許可を表します。 以下は、すべての種類のファイルの説明です。
* 2番目の列*-ファイルまたはディレクトリが使用するメモリブロックの数を表します。
第3列-ファイルの所有者を表します。 これは、このファイルを作成したUnixユーザーです。
第4列-所有者のグループを表します。 すべてのUnixユーザーには、関連するグループがあります。
第5列-バイト単位でファイルサイズを表します。
第6列-このファイルが最後に作成または変更された日付と時刻を表します。
第7列-ファイルまたはディレクトリ名を表します。
Sr.No. | Prefix & Description |
---|---|
1 |
- ASCIIテキストファイル、バイナリ実行可能ファイル、ハードリンクなどの通常のファイル。 |
2 |
b 特殊ファイルをブロックします。 物理ハードドライブなどの入力/出力デバイスファイルをブロックします。 |
3 |
c 文字特殊ファイル。 物理ハードドライブなどの未加工の入出力デバイスファイル。 |
4 |
d 他のファイルとディレクトリのリストを含むディレクトリファイル。 |
5 |
l シンボリックリンクファイル。 通常のファイルへのリンク。 |
6 |
p 名前付きパイプ。 プロセス間通信のメカニズム。 |
7 |
s プロセス間通信に使用されるソケット。 |
メタキャラクター
Unixでは、メタキャラクターは特別な意味を持ちます。 たとえば、'および'?はメタキャラクターです。*を使用して0個以上の文字に一致し、疑問符(?*)は単一の文字に一致します。
例-
すべてのファイルを表示します。名前は ch で始まり、*。doc *で終わります-
ここで、**は、任意の文字と一致するメタ文字として機能します。 あなただけの *.doc で終わるすべてのファイルを表示したい場合は、次のコマンドを使用することができます-
隠しファイル
不可視ファイルとは、最初の文字がドットまたはピリオド文字(。)であるファイルです。 Unixプログラム(シェルを含む)は、これらのファイルのほとんどを使用して構成情報を保存します。
隠しファイルのいくつかの一般的な例には、ファイルが含まれます-
- .profile -Bourneシェル(sh)初期化スクリプト
- .kshrc -Kornシェル(ksh)初期化スクリプト
- .cshrc -Cシェル(csh)初期化スクリプト
- .rhosts -リモートシェル構成ファイル
不可視のファイルをリストするには、 ls に -a オプションを指定します-
- 単一ドット(。)-これは現在のディレクトリを表します。
- 二重ドット(..)-これは親ディレクトリを表します。
ファイルを作成する
上記のコマンドは、指定されたファイル名でファイルを開きます。 ここで、キー i を押して編集モードに入ります。 編集モードになったら、次のプログラムのようにファイルにコンテンツを書き始めることができます-
あなたがプログラムで完了したら、これらの手順に従ってください-
- キー esc を押して、編集モードを終了します。
- 2つのキーを押します Shift+ ZZ が一緒になって、ファイルから完全に出てきます。
これで、現在のディレクトリに filename で作成されたファイルが作成されます。
ファイルを編集する
ファイルを開いたら、キー i を押すと編集モードになり、ファイルを編集して続行できます。 ファイル内をあちこち移動したい場合は、まずキー Esc を押して編集モードを終了する必要があります。 この後、次のキーを使用してファイル内を移動できます-
- l キーで右側に移動します。
- h キーで左側に移動します。
- ファイル内で上下に移動する k キー。
- ファイル内で下に移動する j キー。
したがって、上記のキーを使用して、編集したい場所にカーソルを置くことができます。 配置したら、 i キーを使用して編集モードにできます。 ファイルの編集が完了したら、 Esc を押し、最後に2つのキー Shift+を押します。 ZZ が一緒になって、ファイルから完全に出てきます。
ファイルのコンテンツを表示する
あなたは次のように*猫*コマンドと一緒に -b オプションを使用して行番号を表示することができます-
ファイル内の単語を数える
ここに4つの列すべての詳細があります-
- 最初の列-ファイル内の行の総数を表します。
- 第2列-ファイル内の単語の総数を表します。
- 第3列-ファイル内の合計バイト数を表します。 これはファイルの実際のサイズです。
- 第4列-ファイル名を表します。
複数のファイルを指定して、それらのファイルに関する情報を一度に取得できます。 以下は簡単な構文です-
ファイルをコピーする
ファイルのコピーを作成するには、 cp コマンドを使用します。 コマンドの基本的な構文は次のとおりです-
以下は、既存のファイル filename のコピーを作成する例です。
これで、現在のディレクトリにもう1つの copyfile ファイルが見つかります。 このファイルは、元のファイル filename とまったく同じです。
ファイル名を変更する
ファイルの名前を変更するには、 mv コマンドを使用します。 以下は、基本的な構文です-
次のプログラムは、既存のファイル filename の名前を newfile に変更します。
ファイルを削除する
既存のファイルを削除するには、 rm コマンドを使用します。 以下は、基本的な構文です-
注意-ファイルには有用な情報が含まれている場合があります。 この Delete コマンドを使用するときは、常に注意することをお勧めします。 rm コマンドとともに -i オプションを使用することをお勧めします。
以下は、既存のファイル filename を完全に削除する方法を示す例です。
次のコマンドを使用すると、一度に複数のファイルを削除できます-
標準Unixストリーム
通常の状況では、すべてのUnixプログラムは起動時に3つのストリーム(ファイル)を開いています-
- stdin -これは「標準入力」と呼ばれ、関連するファイル記述子は0です。 これは、STDINとしても表されます。 Unixプログラムは、STDINからデフォルトの入力を読み取ります。
- stdout -これは「標準出力」と呼ばれ、関連するファイル記述子は1です。 これは、STDOUTとしても表されます。 Unixプログラムは、STDOUTにデフォルト出力を書き込みます
- stderr -これは_標準エラー_と呼ばれ、関連するファイル記述子は2です。 これは、STDERRとしても表されます。 Unixプログラムは、すべてのエラーメッセージをSTDERRに書き込みます。