![見出し画像](https://assets.st-note.com/production/uploads/images/94751735/rectangle_large_type_2_4028810104ebf426de69146b9ad9cce6.png?width=800)
7.ファイル、ディレクトリの操作 | ゼロからはじめるLinuxサーバー構築
Linux(リナックス)を使って、CUI環境でサーバを構築していく記録です。
すべて無償で使えるソフトウェアを使いますのでMacかWindowsのパソコンが一台あれば大丈夫です。
前回はvi(テキストエディタ)の使い方を覚えました。
今回はファイル、ディレクトリ操作について覚えます。
ちなみに前回の記事は以下から
今回覚えるコマンド
今回はファイルやディレクトリをコピーしたり、消去したりする操作を行うコマンドを覚えていきます。
mkdirコマンド
make directory
ディレクトリの作成
cpコマンド
copy
ファイル、ディレクトリのコピー
mvコマンド
move
ファイル、ディレクトリ移動、リネーム
rmコマンド
remove
ファイル、ディレクトリの消去
ディレクトリの作成
ディレクトリの作成にはmkdirコマンドを使います。
make directory
記述方法は以下の通りです。
mkdir [ディレクトリ名]
mkdirコマンドを試してみます。
現在のディレクトリにsampledirを作ります
mkdir dir1
現在のディレクトリの中身を表示します
ll
実際に試したところが以下の画面です。
ディレクトリは青色で表示されています。
![](https://assets.st-note.com/img/1673913939160-LHFUpP78No.png?width=800)
ファイルのコピーを行う
ファイルやディレクトリのコピーを行うにはcpコマンドを使います。
copy
まずはファイルのコピー方法を覚えます。
記述方法は以下の通りです。
cp [コピーするファイル、ディレクトリ] [コピー先]
以前viで作成したtxt1をコピーしてみます。
sampleをsample2にコピーします
cp txt1 txt2
ディレクトリ一覧を表示します
ll
実際にcpコマンドを試したところが以下の画面です。
![](https://assets.st-note.com/img/1673914288919-PIfOOLZdUb.png?width=800)
続いてはtxt1のテキストを先程作成したdirの中にtxt3という名前でコピーしてみます。
llコマンドですが、対象のディレクトリを選択することもできます。
llコマンドでsampledirのディレクトリの中身を表示してみます。
txt1をdir1の中にtxt3という名前でコピーします
cp txt1 dir1/txt3
コピーされたか確認してみます
ll dir1
txt3としてコピーされていました。
![](https://assets.st-note.com/img/1673914506182-ZndTILkpvp.png?width=800)
続いてはディレクトリごとコピーしてみます
ディレクトリごとコピーする場合の注意ですが、-rをつけます。
以下のように記述します。
cp -r [コピーするディレクトリ] [コピー先の名前]
ちなみに-rのオプションの意味はディレクトリの中身も含めてコピーするということです。他のサイトや解説本などでは再帰的という言葉で表されています。
dir1をdir2にコピーする
cp -r dir1 dir2
コピーされたか確認する
ll
上記のコマンドを入力した結果です。
dir1がdir2にコピーされました。
![](https://assets.st-note.com/img/1673914667766-PES4Bc4wXj.png?width=800)
ファイル、ディレクトリの移動
続いてはファイル、ディレクトリの移動、リネームを行います。
移動、リネームについてはmvコマンドを使います。
move
移動とリネームがなんで一緒なmvかと違和感があるかもしれません。
AをBに移動させると考えた時
全く別のディレクトリに移動させる
同じディレクトリ内で別の名前に移動させる
と考えるとリネームもまぁ移動かと考えていただけるでしょうか。
mvコマンドは以下のように記述します
mv [移動するファイル、ディレクトリ] [移動先]
ではsampleをsample4に移動(リネーム)させてみます。
txt1をtxt4に移動(リネーム)
mv txt1 txt4
結果を表示する
ll
実行した画面は以下の通り
ちゃんとtxt1がtxt4にリネームできました。
![](https://assets.st-note.com/img/1673915143765-K9domoPORD.png?width=800)
続いてはディレクトリごと移動させてみます。
dir1をdir2の中に入れます。
dir1をdir2に移動する
mv dir1 dir2/
現在のディレクトリを表示
ll
dir2の中身を表示
ll dir2
試した結果は以下の通りです。
dir1をdir2の中に入れる事ができました。
![](https://assets.st-note.com/img/1673915402668-RM58CR2RIF.png?width=800)
ファイル、ディレクトリの削除
ファイル、ディレクトリの削除を行うにはrmコマンドを使います。
remove
rmコマンドの記述方法は以下の通り
ファイルの場合
rm -f [削除するファイル]
ディレクトリごと消す場合
rm -rf [削除するディレクトリ]
-fオプション
○○を削除しますか?の確認をしないで削除します
ファイルの場合は削除しますか?の質問が一回だけですが、ディレクトリを削除する場合ディレクトリにファイルが多く入っていると何回も答えなければなりません。
-rオプション
ディレクトリの場合は-rをつけないと怒られます。cpのときもありましたが、中身も全部(再帰的に)削除するということになります。
txt2のファイルを削除してみます。
rm -f txt2
実行結果は以下のとおりです。
![](https://assets.st-note.com/img/1673916058446-OHj42ZWgFp.png?width=800)
続いてはディレクトリごと削除してみます
rm -r dir2
fオプションをつけずにdir2を削除してみました。
質問にはn(no)かy(yes)で答えます。
![](https://assets.st-note.com/img/1673916194667-F3ye7l7OBa.png?width=800)
コメント
今回はディレクトリの作成、コピー、移動、削除について覚えました。
自分の場合サーバの設定ファイルを触る場合はコピーでバックアップを残すようにしています。
この記事が気に入ったらサポートをしてみませんか?