第1章:必須コマンド15選
1.1 これだけは覚えよう!最重要コマンド
1.2 各コマンドの詳細
1. ls - ファイル一覧表示
$ ls -la
drwxr-xr-x 5 user user 4096 Jan 15 10:30 .
drwxr-xr-x 3 user user 4096 Jan 10 09:15 ..
-rw-r--r-- 1 user user 220 Jan 12 14:22 file.txt
drwxr-xr-x 3 user user 4096 Jan 10 09:15 ..
-rw-r--r-- 1 user user 220 Jan 12 14:22 file.txt
オプション: -l
詳細表示、-a
隠しファイルも表示、-h
サイズを読みやすく
2. cd - ディレクトリ移動
$ cd /home/user/Documents
特殊な使い方:
cd ~
ホームディレクトリへcd ..
親ディレクトリへcd -
直前のディレクトリへ
3. pwd - 現在地表示
$ pwd
/home/user/Documents
迷子になったらこのコマンド!
4. mkdir - ディレクトリ作成
$ mkdir new_folder
$ mkdir -p parent/child
$ mkdir -p parent/child
-p
親ディレクトリも同時作成
5. rm - ファイル削除
$ rm file.txt
$ rm -rf directory
$ rm -rf directory
⚠️ -rf
は強制削除(取り消し不可)
6. cp - コピー
$ cp source.txt dest.txt
$ cp -r source_dir dest_dir
$ cp -r source_dir dest_dir
-r
ディレクトリを丸ごとコピー
7. mv - 移動/名前変更
$ mv old.txt new.txt
$ mv file.txt /home/user/
$ mv file.txt /home/user/
名前変更と移動の両方に使用
8. chmod - 権限変更
$ chmod 755 script.sh
$ chmod +x script.sh
$ chmod +x script.sh
755 = 所有者:全権限、他:読み実行のみ
9. chown - 所有者変更
$ sudo chown user:group file.txt
ファイルの所有者とグループを変更
10. sudo - 管理者権限で実行
$ sudo apt update
$ sudo systemctl restart apache2
$ sudo systemctl restart apache2
システム変更時に必要
11. cat - ファイル内容表示
$ cat file.txt
$ cat file1.txt file2.txt > merged.txt
$ cat file1.txt file2.txt > merged.txt
ファイルの結合にも使用可能
12. grep - 文字列検索
$ grep "error" log.txt
$ ps aux | grep apache
$ ps aux | grep apache
パイプと組み合わせて強力に
13. echo - 文字列出力
$ echo "Hello World"
$ echo $PATH
$ echo $PATH
変数の確認にも便利
14. ps - プロセス表示
$ ps aux
$ ps -ef
$ ps -ef
実行中のプログラムを確認
15. man - マニュアル表示
$ man ls
$ man chmod
$ man chmod
困ったらマニュアルを読もう(qで終了)
1.3 コマンドの組み合わせ技
パイプ(|)を使った連携
$ ls -la | grep ".txt"
→ テキストファイルだけを表示
$ ps aux | grep python | grep -v grep
→ Python関連のプロセスを表示(grep自身は除外)
リダイレクト(>)で結果を保存
$ ls -la > file_list.txt
→ ファイル一覧をテキストファイルに保存
$ echo "新しい行" >> existing.txt
→ 既存ファイルに追記(>>は追記、>は上書き)