Linuxコマンドライン入門【初心者向け・保存版】

Linux

Linuxを使い始めたばかりの方、あるいは「黒い画面」でお馴染みのコマンドライン操作に少し不安を感じていませんか?一見難しそうに見えるかもしれませんが、基本的なコマンドをいくつかマスターすれば、ファイル操作やシステム管理が驚くほどスムーズになります。

今回は、Linuxの日常的な操作でよく使われる基本的なコマンドとそのオプションをまとめた、非常に便利なチートシート(ご提供いただいた画像の内容を元にしています)をベースに、各コマンドの役割と使い方を分かりやすく解説していきます。ぜひブックマークして、日々の作業にお役立てください!

ファイルとディレクトリの操作

Linuxの基本はファイルとディレクトリの操作です。まずはここから押さえましょう。

一覧表示: ls コマンド

カレントディレクトリ(現在いる場所)にあるファイルやディレクトリの一覧を表示します。

  • ls: シンプルに一覧表示します。
  • ls -l: ファイルのパーミッション、所有者、サイズ、更新日時などの詳細情報をリスト形式で表示します(Long format)。
  • ls -a: . で始まる隠しファイルや隠しディレクトリも含めてすべて表示します(All)。
  • ls -lh: -l の詳細表示に加え、ファイルサイズをKB, MB, GBのように人間が読みやすい単位で表示します(Human-readable)。

ディレクトリ移動: cd コマンド

作業するディレクトリを変更(移動)します。

  • cd /path/to/directory: 指定したパスのディレクトリへ移動します。
  • cd ..: 一つ上の階層のディレクトリへ移動します。
  • cd または cd ~: ホームディレクトリへ移動します。
  • cd -: 直前にいたディレクトリへ移動します。

ディレクトリ作成: mkdir コマンド

新しいディレクトリ(フォルダ)を作成します。

  • mkdir myFolder: myFolder という名前のディレクトリを作成します。
  • mkdir -p dir1/dir2: dir1 という親ディレクトリが存在しない場合でも、dir1 とその中の dir2 を含めて階層的に作成します(Parents)。

コピー: cp コマンド

ファイルやディレクトリをコピーします。

  • cp source.txt destination.txt: source.txtdestination.txt という名前でコピーします。
  • cp -r /source/directory /dest/directory: ディレクトリをその中身ごと再帰的にコピーします(Recursive)。

移動/名前変更: mv コマンド

ファイルやディレクトリを移動したり、名前を変更したりします。

  • mv old_name.txt new_name.txt: ファイル名を old_name.txt から new_name.txt に変更します。
  • mv file.txt /path/to/destination: file.txt を指定したディレクトリへ移動します。

削除: rm コマンド

ファイルやディレクトリを削除します。注意:Linuxの rm コマンドで削除したファイルは、通常元に戻せません。特に -rf オプションの使用は慎重に行ってください。

  • rm file.txt: file.txt というファイルを削除します。
  • rm -r directory/: ディレクトリとその中身を再帰的に削除します。
  • rm -rf directory/: ディレクトリが空でなくても、確認なしで強制的に再帰削除します(Force)。

ファイル内容の表示

テキストファイルの中身を確認するためのコマンドです。

  • cat file.txt: ファイルの内容をすべてターミナルに出力します。短いファイル向きです。
  • less file.txt: ファイルの内容をページャ(上下キーでスクロールできるビューア)で開きます。大きなファイルの閲覧に便利です (q キーで終了)。
  • head file.txt: ファイルの先頭10行を表示します。-n <行数> で表示行数を指定できます。
  • tail file.txt: ファイルの末尾10行を表示します。-n <行数> で表示行数を指定できます。
  • tail -f logfile.log: ファイルの末尾を監視し続け、追記される内容をリアルタイムで表示します。ログファイルの監視に非常に便利です(Ctrl+Cで終了)。

ファイル内検索: grep コマンド

ファイルの中から特定の文字列(パターン)が含まれる行を検索します。

  • grep "search_term" file.txt: file.txt 内から search_term という文字列を含む行を検索します。
  • grep -r "search_term" /path: 指定したディレクトリ /path 内のファイルを再帰的に検索します。
  • grep -i "search_term" file.txt: 大文字・小文字を区別せずに検索します(Ignore case)。

システム情報の確認

Linuxシステムの基本的な情報を確認するコマンドです。

  • uname -a: OS(カーネル)のバージョンなどのシステム情報を表示します。
  • df -h: ディスク(ファイルシステム)の使用状況を人間が読みやすい形式で表示します。
  • free -h: メモリの使用状況を人間が読みやすい形式で表示します。(画像では-hがありませんが、付けると見やすいです)
  • top: CPU、メモリ、実行中のプロセスなど、システムの現在のリソース使用状況をリアルタイムで表示します (q キーで終了)。

プロセス管理

実行中のプログラム(プロセス)を管理するコマンドです。

  • ps aux: 現在実行中のすべてのプロセスを詳細情報付きで一覧表示します。
  • kill [pid]: 指定したプロセスID(PID)のプロセスを終了させます(通常の終了シグナルを送ります)。
  • kill -9 [pid]: 指定したPIDのプロセスを強制的に終了させます(強制終了シグナルを送ります)。
  • killall process_name: 指定した名前のプロセスをすべて終了させます。

権限と所有者の変更

ファイルやディレクトリへのアクセス権限や所有者を変更します。

パーミッション変更: chmod コマンド

ファイルやディレクトリの読み取り(r)、書き込み(w)、実行(x)の権限を変更します。

  • chmod 755 file.txt: file.txt の権限を rwxr-xr-x (所有者:rwx, グループ:r-x, その他:r-x) に変更します。数字(8進数)での指定方法です。
  • chmod u+x script.sh: script.sh に所有者(User)の実行権限(execute)を追加します。記号での指定方法です。
  • chmod -R 777 /directory: ディレクトリとその中のファイル/ディレクトリすべての権限を再帰的に rwxrwxrwx(全ユーザーに全権限)に変更します。
    • 注意:777 はセキュリティリスクを高めるため、通常は推奨されません。

所有者変更: chown コマンド

ファイルやディレクトリの所有ユーザーと所有グループを変更します。

  • chown user:group file.txt: file.txt の所有者を user、所有グループを group に変更します。
  • chown -R user:group /dir: ディレクトリ /dir とその中のすべてのファイル/ディレクトリの所有者・グループを再帰的に変更します。

ファイル検索: find コマンド

指定した条件でファイルやディレクトリを検索します。非常に高機能なコマンドです。

  • find /path -name "file.txt": 指定したパス /path 以下から file.txt という名前のファイルを検索します。
  • find /path -type f -size +100M: 100MBより大きい通常のファイル(File)を検索します。
  • find /path -mtime -1: 過去24時間以内(Modification time)に更新されたファイルを検索します。

アーカイブと圧縮: tar コマンド

複数のファイルやディレクトリを一つにまとめたり(アーカイブ)、圧縮・解凍したりします。

  • tar -cvf archive.tar /path/to/directory: 指定したディレクトリを archive.tar という名前のアーカイブファイルにまとめます(Create, Verbose, File)。
  • tar -xvf archive.tar: archive.tar というアーカイブファイルを展開(解凍)します(Extract)。
  • tar -czvf archive.tar.gz /path/to/directory: ディレクトリをまとめて、gzip形式で圧縮し archive.tar.gz を作成します(gZip)。
  • tar -xzvf archive.tar.gz: gzip形式で圧縮されたアーカイブファイル archive.tar.gz を展開・解凍します。

管理者権限: sudo コマンド

一般ユーザーが一時的に管理者(root)権限でコマンドを実行するためのコマンドです。

  • sudo command: command を管理者権限で実行します。パスワードを求められる場合があります。
  • sudo su または sudo -i: rootユーザーに切り替わります。作業が終わったら exit で元のユーザーに戻るのを忘れないようにしましょう。

最後に

これらの基本的なコマンドは、Linuxを効率的に、そして深く理解するための第一歩です。最初は覚えるのが少し大変かもしれませんが、実際にターミナルで試しながら使っていくうちに、自然と指が覚えていきます。

このチートシートが、あなたのLinuxライフの一助となれば幸いです。コマンドラインの世界は奥が深いですが、まずは基本から、焦らず楽しみながら学んでいきましょう!

最後までお読みいただき、ありがとうございました。

コメント

タイトルとURLをコピーしました