Linux入門 3-2 基本的なファイル管理の実行

[](参照ソース)
[Udemyの動画講座]:https://www.udemy.com/course/linuxlpic/?utm_source=bene-content-marketing&utm_campaign=normal&utm_content=story&utm_term=career&utm_medium=udemyads
[Linux入門 3-1]:https://qiita.com/hoglet/items/314449a3755e98067e0f
[Linux入門 3-3]:https://qiita.com/hoglet/items/540afd7d7fb8ae368487

# はじめに
Linux初学者である自分向け用の記事です。[Udemyの動画講座]を参考にしました。
僕の勉強法は`動画を見る`→`実際に動かしてみる`→`問題演習`という流れです。

前回まで：[Linux入門 3-1]

***
# 3. LinuC 101 Ver .10.0(問題、テスト、演習)
# 基本的なファイル管理の実行

```
ls, file, touch, cp, mv, rm, mkdir , rmdir , tar, cp, 
ファイル名のパターンマッチ, dd, gzip ,gunzip, bzip2, xz
```
# touch
空ファイルを作成する or ファイルのタイムスタンプを変更するコマンド

```
$ touch file1
```
```s
[test@38c2d4f11e95 02]$ touch file1
[test@38c2d4f11e95 02]$ ls -la
total 8
drwxrwxr-x 2 test test 4096 Nov 28 06:43 .
drwxrwxr-x 3 test test 4096 Nov 28 06:41 ..
-rw-rw-r-- 1 test test    0 Nov 28 06:43 file1
```
```
$ touch –t CCYYMMDDhhmm ファイル名
CC: 西暦の上2桁、YY: 西暦の下2桁、MM: 月、DD: 日、hh: 時、mm: 分
```
```s
[test@38c2d4f11e95 02]$ touch -t 202101011000 file2
[test@38c2d4f11e95 02]$ ls -la
total 8
drwxrwxr-x 2 test test 4096 Nov 28 06:44 .
drwxrwxr-x 3 test test 4096 Nov 28 06:41 ..
-rw-rw-r-- 1 test test    0 Nov 28 06:43 file1
-rw-rw-r-- 1 test test    0 Jan  1  2021 file2
```
# cp
ファイルをコピーするコマンド

```
$ cp コピー元 コピー先
ただし、オプションをつけないと所有者権限や時間まではコピーされない
```
```s
[test@38c2d4f11e95 02]$ cp file1 file3
[test@38c2d4f11e95 02]$ ls -la
total 8
drwxrwxr-x 2 test test 4096 Nov 28 06:50 .
drwxrwxr-x 3 test test 4096 Nov 28 06:41 ..
-rw-rw-r-- 1 test test    0 Nov 28 06:43 file1
-rw-rw-r-- 1 test test    0 Nov 28 06:50 file3
```
```
$ cp –p(--preserve): コピー元のファイルの属性(所有者、アクセス権、タイムスタンプ)もコピーする
```
```s
[test@38c2d4f11e95 02]$ cp -p file1 file4
[test@38c2d4f11e95 02]$ ls -la
total 8
drwxrwxr-x 2 test test 4096 Nov 28 06:51 .
drwxrwxr-x 3 test test 4096 Nov 28 06:41 ..
-rw-rw-r-- 1 test test    0 Nov 28 06:43 file1
-rw-rw-r-- 1 test test    0 Nov 28 06:50 file3
-rw-rw-r-- 1 test test    0 Nov 28 06:43 file4
```
```
$ cp –i(--interactive):コピー先に同名のファイルがあれば上書きするかどうか確認をする
```
```s
[test@38c2d4f11e95 02]$ cp -i new_file file1
cp: overwrite 'file1'? n
```
```
cp –r(--recursive): ディレクトリの中身もコピーする
```
```s
[test@38c2d4f11e95 02]$ cp -r dir1 dir2
[test@38c2d4f11e95 02]$ ls
dir1  dir2  file1  file2  file3  file4  new_file
```

# mkdir
ディレクトリを作成するコマンド

```
$ mkdir –p(--parents): 親ディレクトリも同時に作成する
```
```s
[test@38c2d4f11e95 02]$ mkdir -p dir3/sub1/subsub1
[test@38c2d4f11e95 02]$ ls     
dir1  dir2  dir3  file1  file2  file3  file4  new_file
[test@38c2d4f11e95 02]$ ls dir3
sub1
[test@38c2d4f11e95 02]$ ls dir3/sub1/
subsub1
```

# rm
ファイル(ディレクトリ)を削除するコマンド

```
$ rm –r(--recursive): ディレクトリ内のファイル、ディレクトリも含めディレクトリを削除する
```
```s
[test@38c2d4f11e95 02]$ rm -r dir3/
[test@38c2d4f11e95 02]$ ls
dir1  dir2  file1  file2  file3  file4  new_file
```

# tar
ファイルをまとめて圧縮する or 解凍するコマンド
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2217966/56dc1d39-e9ce-50a0-173e-964c3234113b.png)

```
$ tar –cf file.tar file
圧縮する場合
```
```s
[test@38c2d4f11e95 02]$ ls
dir1  dir2  file1  file2  file3  file4  new_file
[test@38c2d4f11e95 02]$ tar -cf file.tar file1 file2 file3
[test@38c2d4f11e95 02]$ ls
dir1  dir2  file.tar  file1  file2  file3  file4  new_file
```
```
$ tar –tf file.tar
アーカイブファイルの内容を表示
```
```s
[test@38c2d4f11e95 02]$ tar -tf file.tar 
file1
file2
file3
```
```
tar –xf file.tar file
解凍する場合
```
```s
[test@38c2d4f11e95 02]$ ls
dir1  dir2  file.tar
[test@38c2d4f11e95 02]$ tar -xf file.tar 
[test@38c2d4f11e95 02]$ ls
dir1  dir2  file.tar  file1  file2  file3
```
```
$ tar -czf file.tar.gz file
-z(--gzip): gzipで圧縮、解凍
```
```s
[test@38c2d4f11e95 02]$ tar -czf file.tar.gz file1 file2 file3
[test@38c2d4f11e95 02]$ ls
dir1  dir2  file.tar.gz  file1  file2  file3
```

*To Be Continued...*
[Linux入門 3-3] へ
***