Linuxのファイル操作
LinuxのCUIでファイルの操作や編集する際には、GUIのWindowsでのダブルクリックして開いての処理と違いコマンドベースになるのでいくつかの手続きが必要になります。操作を覚えるまでは、多少負担に感じるかもしれませんがこの手続きを覚えて慣れてしまえばWindowsより素早くファイル操作ができるようになると思います。まずは、Linux でのファイルに対する基本操作を覚えましょう。
ファイルの表示
ファイルの表示で代表的なので「cat」コマンド(conCATenate)です。
# cat [ファイル名]
ではとりあえずのコマンド表示しましょう。
1 2 3 |
[root@localhost ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 |
これが hostsファイルの中身です。記述の内容は分からなくでもよいです。このコマンドで中をのぞけることが分ればOKです。
複数のファイルを指定すると順番に表示します(ファイルの間は半角スペースを入れてください)。
# cat /etc/hosts /etc/profile
1画面に収まらない行数の多いファイルを表示すると勝手にスクロールされて最初の記述がわかりません。
行数の多いファイルは、「less」コマンドを使います。
テキストの内容を1ページずつ表示(1ページ戻す場合は「Ctrl+B」)
上下カーソルキーで1行づつスクロールでます
# less [ファイル名]
# less /etc/profile
終了する時は「q」を押す
Linux で新規ファイルを作成する
ここで、Linuxで新規ファイル作成をするためのコマンドとして「touch」コマンドがあります。
# touch ファイル名
touchコマンドの引数にファイル名を指定することで空の新規ファイルを作成します
では「newfile」をいう名前のファイルを作成します。
1 2 3 |
[root@localhost ~]# touch newfile [root@localhost ~]# ls newfile |
作成したファイルが表示されます。
ファイルのコピー
ファイルをコピーする時は「cp」(copy)コマンドを使います。
# cp [コピー元ファイル名] [コピー先ファイル名]
1 2 3 |
[root@localhost ~]# cp newfile newfile_cp [root@localhost ~]# ls newfile newfile_cp |
ファイル名には、相対パス・絶対パスのどちらでも大丈夫ですが存在しないディレクトリを記述した場合はエラーとなります。
ファイルの移動
ファイルを移動する時は「mv」(move)コマンドを使います。
# mv [移動元ファイル名] [移動先ファイル名]
1 2 3 |
[root@localhost ~]# mv newfile newfile_mv [root@localhost ~]# ls newfile_cp newfile_mv |
ファイルが移動しているので元の newfile は消えます。
ファイルの削除
ファイルを削除する時は「rm」(remove)コマンドを使います。
# rm [コピー元ファイル名]
newfile は、先ほど削除したので newfile_cp を削除します
1 2 3 4 |
[root@localhost ~]# rm newfile_cp rm: 通常の空ファイル `newfile_cp' を削除しますか? y [root@localhost ~]# ls newfile_mv |
このまま実行すると上記のようにファイルを削除して良いか聞かれます。削除する場合は「y」を入力して実行すると削除されます(この挙動はディストリビューションによって変化します)。CentOSの場合は、「-f」オプション(force)を付けると聞かれずにそのまま実行される。「-f」はメッセージを表示しないオプションです。
# rm -f newfile
なにも聞かれずに削除(ファイルをもう一度作成して実際にコマンドを実行してください)
ディレクトリの作成
ディレクトリを作成する時は「mkdir」(make directory)コマンドを使います。
# mkdir [ディレクトリ名]
1 2 3 |
[root@localhost ~]# mkdir newdir [root@localhost ~]# ls newdir newfile newfile_mv |
通常は、存在しないディレクトリ内に作成できませんが「-p」オプションを付けてコマンド実行することで記述したディレクトリが存在しない場合はそのディレクトリも同時に作成します。
new ディレクトリは存在しない。
1 2 3 4 5 6 |
[root@localhost ~]# mkdir -p ./new/newdir2 [root@localhost ~]# ls new newdir newfile newfile_mv [root@localhost ~]# cd new [root@localhost new]# ls newdir2 |
new と newdir2 の2つのディレクトリが同時に作成される。
ディレクトリのコピー
ディレクトリをコピーは、ファイルのコピーと同じ「cp」(copy)コマンドを使いますがオプションに「-r」を付けます(recursive:再帰的)。ディレクトリはサブフォルダもあるのでそれも含める必要があります。
# cp -r new new2
サブフォルダ(ファイル)も一緒にコピーされます。
ディレクトリの移動
ディレクトリ移動も同様に「mv」(move)コマンドを使いますがコピーと同じくオプションに「-r」を付けます(recursive:再帰的)。
1 2 3 4 5 6 7 |
[root@localhost ~]# cp -r new new2 [root@localhost ~]# ls new newdir newfile_mv new2 newfile [root@localhost ~]# cd new2 [root@localhost new2]# ls newdir2 |
サブフォルダ(ファイル)も一緒にコピーされます。
ディレクトリの削除
ディレクトリの削除は、「rmdir」(remove)コマンドを使います。サブフォルダも一緒に削除するには、「rm」オプション「-rf」を付けます(recursive:再帰的と、force:メッセージを表示しない)。
サブディレクトリがない場合
1 2 3 |
[root@localhost ~]# rmdir newdir [root@localhost ~]# ls new new2 newfile newfile_mv |
サブディレクトリがある場合
1 2 3 |
[root@localhost ~]# rm -rf new2 [root@localhost ~]# ls new newfile newfile_mv |