Linuxサーバー構築2（基本的な操作コマンド）

<h5>1.ディレクトリ操作コマンド

ディレクトリ＝ハードディスク上に保存されているファイルの整理・管理をするための階層構造（ツリー構造）を持つグループ名。（ファイルの入れ物）

ルートディレクトリ＝頂点に「/」で表される
サブディレクトリ＝その下の階層たち

カレントディレクトリ＝現在作業しているディレクトリのこと
確認コマンド→pwd
![WS000001.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/f6ad292c-03f1-97ca-61e1-2b8b592f178b.jpeg)


<h5>2.ディレクトリ内を一覧で表示する

コマンド→ls（List）
![WS0000012.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/0a5775e1-df05-949d-26dd-bd683fd4df2a.jpeg)


【オプション】
-a	「.」から始まる隠しファイルも表示する
-A	「.」から始まる隠しファイルも表示するが「.（カレントディレクトリ）」と「..（親ディレクトリ）は表示しない
-d	ディレクトリ自身の情報を表示する
-F	ファイルの種類も表示する（ディレクトリは「/」 実行ファイルは「*」
シンボリックファイルは「@」と表示される
-i	iノード番号を表示する
-l	ファイルの詳細な情報を表示する
-t	日付順に表示する
-h	単位付きで表示する

オプションは複数入力可能
（例）ls -aF

他のディレクトリ内も表示可能
（例）ls　-F　/usr/bin
　　　　　　　　　↑
　　　ディレクトリ名を指定する

<h5>3.カレントディレクトリを変更する（場所移動）

練習１
①pwdで現在位置を確認する→結果：/home/cents
②cd ../を入力→結果：/homeに移動している
③cd /usr/binを入力→結果：/usr/bin
④cdを入力→結果：/home/cents　（ホームに帰ってきた）
![WS000004.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/10cc49e8-c83e-4118-fe28-b60c4ef1b50f.jpeg)


<h5>4.ディレクトリを新規作成する、削除する

新規作成コマンド→mkdir [オプション名] ディレクトリ名

【オプション】
-m	指定したアクセス権を付加してディレクトリを作成する
-p	親ディレクトリが存在.ディレクトリを削除する

削除コマンド　rmdir ディレクトリ名
※ディレクトリ内は空でないといけない

練習１
①rmdir test入力→結果：コマンド上は特に表示なし
②ls入力→結果：testが消えている

練習２
①rmdir test2入力→結果：ディレクトリ内にtest3があるから消せない
②rmdir test2/test3入力→結果：コマンド上は特に表示なし
③ls test2入力→結果：何も表示されない（削除されている）
④rmdir test2入力→結果：コマンド上は特に表示なし
⑤ls入力→結果：test2が消えている
![WS000002.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/8b707ce7-6bab-8c21-736b-798c35987056.jpeg)


<h5>5.ファイル操作コマンド　ファイル新規作成

ファイル新規作成　touch [オプション] ファイル名

【オプション】
-t	タイムスタンプを指定日時に変更する
【書式】[[CC]YY]MMDDhhmm[.SS]
CC:西暦の上2桁（省略可）
YY:西暦の下2桁（省略可）
MM:月
DD:日
hh:時（24時間表記）
mm:分
SS:秒（省略可 指定しない場合は00になる）

-a	アクセス時刻だけを変更する
-m	修正時刻だけを変更する

練習
①touch sample.txt入力→結果：コマンド上は特に表示なし
②ls入力→結果：sampleのテキストファイルが追加されている
![WS000000.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/8b82074c-3813-76c3-06ef-cc6ffd052254.jpeg)

<h5>6.ファイルのコピー

ファイルのコピーコマンド　cp [オプション] コピー元のファイル名　コピー先のファイル名

【オプション】
-ｆ	コピー先に同名のファイルがあれば上書きする
-i	コピー先に同名のファイルがあれば上書きするかどうか確認する
-p	コピー元ファイルの属性（所有者、所有グループ、アクセス権、タイムスタンプ）を保持したままコピーする
-r	ディレクトリ内のファイル、サブディレクトリを含めディレクトリをコピーする
-d	シンボリックリンクをシンボリックリンクとしてコピーする
-a	できる限り元ファイルの構成と属性をコピー先でも保持する

練習
①cp sample.txt sample2.txt入力→結果：コマンド上は特に表示な
②ls入力→結果：sampleファイルがコピーされsample2ファイルが作成されている
![WS000000.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/50ecd1b9-0499-b419-0124-bb84d2d7e2a5.jpeg)

<h5>7.ファイルを別のディレクトリ内にコピー

コマンド　cp [オプション] コピー元ファイル名　コピー先ディレクトリ名　コピー先ファイル名

練習
①cp sample.txt test2/test3/sample3.txt入力→結果：コマンド上は特に表示なし
②ls test2/test3入力→結果：sample3ファイルがtest3の中に作成されている
![WS000001.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/b69b1d4d-f0f4-0f02-fc95-60441257fad1.jpeg)

<h5>8.ディレクトリをコピー

コマンド　cp [オプション] コピー元のディレクトリ名　コピー先のディレクトリ名

練習
①cp test2 test4入力→結果：エラーが出てコピーできない
※ディレクトリをコピーする場合は必ず-rを入れなければならない
②cp -r test2 test4入力→結果：コマンド上は特に表示なし
③ls入力→結果：test4ディレクトリが追加されている
![WS000002.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/2d29e2e1-bebc-c3ce-ada8-072d362cef46.jpeg)

<h5>10.ファイルを移動する

コマンド　mv [オプション] 移動元ファイル名　移動先ディレクトリ名

【オプション】
-ｆ	移動先に同名のファイルがあれば上書きする
-i	移動先に同名のファイルがあれば上書きするかどうか確認する

練習
①mv sample.txt test4入力→結果：コマンド上は特に表示なし
②ls入力→結果：sample.txtが消えている
③ls test4入力→結果：sample.txtが追加されている
![WS000000.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/705b0d52-8fce-01f3-b941-591e3a7f2369.jpeg)

<h5>11.ファイル名を変更する

コマンド　mv [オプション] 変更前のファイル名　変更後のファイル名

練習
①mv test4/sample.txt test4/sample4.txt入力→結果：コマンド上は特に表示なし
②ls test4入力→結果：ファイル名がsample4.txtに変更されている
※カレントディレクトリ内であればtest4/などのディレクトリ名指定しなくても名前変更できる
![WS000001.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/07590b31-c3d3-6a97-8896-9f102e480dca.jpeg)

<h5>12.ディレクトリを移動する

コマンド　mv [オプション] 移動元ディレクトリ名　移動先ディレクトリ名

練習
①mv test4/test3 ~入力→結果：コマンド上は特に表示なし
※「～」はホームディレクトリ名のこと、今回の場合/home/centsになる
②ls入力→結果：test3が移動している
③遊びでtest3をtest4に移動させてからもう一度ホームディレクトリに戻してみた
![WS000002.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/1b117ed5-aa9d-f104-8a2d-98e3374b29c0.jpeg)

<h5>13.ファイル、ディレクトリを削除する

コマンド　rm [オプション] ファイル名orディレクトリ名

【オプション】
-ｆ	ユーザーへの確認無しに削除する
-i	削除する前にユーザーに確認する
-r	サブディレクトリも含め、指定ディレクトリを削除する

練習１
①rm sample2.txt入力→結果：コマンド上は特に表示なし
②ls入力→結果：sample2.txtが消えている

練習２
①rm test4入力→結果：test4内にsample4.txtがあるのでエラーが出る
②rm -ir test4入力→結果：-iは削除前に確認してくれる、-rは全消しオプション、確認内容をy（yes）で入力
③ls入力→結果：test4が削除された
![WS000000.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/75defd2e-dca2-09b6-d8e3-bdfdb43c68b3.jpeg)

<h5>14.ファイルの検索

コマンド　find 検索ディレクトリ 検索式

【検索式】
-name ファイル名	ファイル名で検索する
-atime 日時	最終アクセス時刻で検索する
-mtime 日時	最終更新時刻で検索する
-perm アクセス権	アクセス権で検索する
-size サイズ	ファイルサイズ（ブロック単位）で検索する
-type ファイルの種類	ファイルの種類で検索する
f：ファイル l：シンボリックリンク d：ディレクトリ
-user ユーザー名	ファイルの所有者で検索する
-print	マッチしたファイルを表示する（省略可能）
-exec コマンド ＼;	マッチしたファイルに対してコマンドを実行する
-ok コマンド ＼;	マッチしたファイルに対してコマンドを実行する（確認あり）

練習１
①find　/usr/bin　-name　"zi*"入力→結果：bin内のziから始まるものが確認できる
![WS000001.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/d05b3a1f-4b08-9bb5-5076-04760e49bda7.jpeg)

練習２
①find　/home　-user　"centos"　-type　"d"入力→結果：/homeディレクトリ内所有ユーザーが「centos」のタイプ「ディレクトリ」のものが検索された
![WS000002.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/548e3611-bddc-6e2d-7a3e-59af356e3efb.jpeg)

練習３
①find /home/centos -name "sample*" -ok rm {} \;入力→結果：-okコマンドを入れていると検索結果に対して確認してくれるので対象のみyで答える
②ls入力→結果：sample.txtが削除されている
![WS000003.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2847607/5df4c505-ae25-2e8e-c79b-11cbfd3ef16b.jpeg)