Linux初学者が最初に学んだCommand 18選

はじめに

今回はLinux Command について学んだ内容を記録しておきたいと思います。

まずは一覧でまとめ、その後にひとつずつ詳細を確認していきます。

Linux Command 18選

こちらが今回学んだコマンドの一覧です。

Ref. Command 内容
1 cd ディレクトリの移動
2 pwd カレントディレクトリの表示
3 ls ディレクトリの中身の表示
4 mkdir ディレクトリの作成
5 rmdir ディレクトリの削除
6 cat ファイルの中身の表示
7 less ファイルの中身のスクロール表示
8 tail ファイルの末尾の表示
9 touch 空のファイルの作成
10 rm 空のファイルの削除
11 mv ファイルの移動/ファイル名の変更
12 cp ファイル、ディレクトリのコピー
13 ln ファイルにリンクをはる
14 find ファイルの検索
15 chmod ファイルやディレクトリの権限の変更
16 chown ファイルやディレクトリのオーナーの変更
17 ps 実行中のプロセスの表示
18 kill 実行中のプロセスの終了

Command の解説

ファイルとディレクト

コマンドの詳細を確認する前に、ファイルとディレクトリの意味について確認しておきます。

ファイルとはデータをコンピュータに保存しておく形式を表しています。文書を保存する場合は、文書ファイルを保存することになり、画像を保存する場合には画像ファイルを保存することになるという意味です。

一方でディレクトリとは、複数のファイルをまとめておくものを表しています。ディレクトリの中にディレクトリを入れておくことも可能です。Pictures というディレクトリに、2024 というディレクトリを入れておいて、2024年に撮影した写真を画像ファイルとして保存すると考えるとイメージがしやすいと思います。

Picturesというディレクトリに入れ子構造になって2024というディレクトリがあり、画像ファイルが保存してあるイメージ

Command

  • cd

    • できること:ディレクトリを移動します
    • コマンドの意味:change directory
    • 使い方
      $ cd [option][directory]
    
  • pwd

    • できること:現在いるディレクトリ(カレントディレクトリ)を表示します
    • コマンドの意味:print working directory
    • 使い方
      $ pwd 
    
  • ls

    • できること:ディレクトリの中身を表示します
    • コマンドの意味:list
    • 使い方
      $ ls 
    
  • mkdir

    • できること:ディレクトリを作成します
    • コマンドの意味:make directory
    • 使い方
      # studyというディレクトリを作成する
      $ mkdir study
    
  • rmdir

    • できること:空のディレクトリを削除します
    • コマンドの意味:remove an empty directory
    • 使い方
      # studyというディレクトリを削除する
      $ rmdir study
    
  • cat

    • できること:(1つまたは複数の)ファイルの中身を確認します
    • コマンドの意味:concatenate(連結するという意味で、複数のファイルの中身を確認する際に、中身が連結されたように確認できるためと考えられます)
    • 使い方
      # test1.txtとtest2.txtというファイルの中身を確認する
      $ cat test1.txt test2.txt
    
  • less

    • できること:ファイルの中身をスクロール表示します
    • コマンドの意味:less is more(少ない方がより豊かという意味。moreに対して遊び心のある反対語が使われている)
    • 使い方
      # test1.txtの中身をスクロール表示する
      $ less test1.txt
    
  • tail

    • できること:ファイルの末尾を表示します
    • コマンドの意味:tail(尻尾)
    • 使い方
      # test1.txtの末尾10行を表示する
      $ tail test1.txt
    
  • touch

    • できること:空のファイルを作成します
      • 本来はすでにあるファイルの日時を更新するためのコマンドですが、更新するファイルがない場合に空のファイルを作成することができるため、空のファイルを作成する際によく利用されます。
    • コマンドの意味:touch
    • 使い方
      # test3.txtという空のファイルを作成する
      $ touch test3.txt
    
  • rm

    • できること:ファイルを削除します
    • コマンドの意味:remove
    • 使い方
      # test3.txtというファイルを削除する
      $ rm test3.txt
    
  • mv

    • できること:ファイルを移動します/ファイル名を変更します
      • ファイルの移動かファイル名の変更かは自動で判定してくれます
    • コマンドの意味:move
    • 使い方
      # test3.txtをtest4.txtに変更する
      $ mv test3.txt test4.txt
    
      # test4.txtをstudyというディレクトリに移動する
      $ mv test4.txt study
    
  • cp

    • できること:ファイルやディレクトリをコピーする
    • コマンドの意味:copy
    • 使い方
      # test.txtをtest5.txtにコピーする
      $ cp test.txt test5.txt
    
  • ln

    • できること:リンクをはります
      • リンクをはるとは?
        • Linuxではファイルに別名をつけることをリンクをはるといいます
      • リンクの種類
        • ハードリンク
          • 1つのファイルに複数の名前をつけること
          • 元のファイルを削除しても消えない
        • シンボリックリンク
          • リンク先のパス名をつけること
          • 元のファイルを移動、削除すると消える
    • コマンドの意味:link
    • 使い方
      # test.txtにassignment.txtのハードリンクをはる
      $ ln test.txt assignment.txt
    
      # test.txtにoutput.txtのシンボリックリンクをはる
      $ ln -s test.txt output.txt
    
  • find

    • できること:(検索条件を指定して)ファイルを検索します
    • コマンドの意味:find
    • 使い方
      # カレントディレクトリ内にあるoutput.mdというファイルのパスを表示する
      $ find . -name output.md -print
    
  • chmod

    • できること:ファイルやディレクトリの権限を設定します
      • 設定は、権限の対象者、アクション(どうするのか)、権限の内容、の3つに分けて設定していきます。
    権限の対象者 記号
    所有者の権限 u
    グループの権限 g
    その他のユーザーの権限 o
    全ユーザーの権限 a
    アクション 記号
    権限の追加 +
    権限の削除 -
    記述した権限 =
    権限の内容 記号(相対指定) 数値(絶対指定)
    読み取り(read) r 4
    書き込み(write) w 2
    実行(execute) x 1

     数値で複数の権限を指定する場合は、数値を足して記載します

    • コマンドの意味:change mode
    • 使い方
      # test.txtの所有者の権限に実行権限を相対指定で追加する
      $ chmod u+x test.txt
    
      # test.txtの所有者とグループに読み取り、書き込み、実行の権限を、その他に読み取りの権限を絶対指定で追加する
      $ chmod 774 test.txt
    
  • chown

    • できること:ファイルやディレクトリのオーナーを変更します
    • コマンドの意味:change ownership
    • 使い方
      # test.txtのオーナーをcodaichiに変更する
      $ sudo chown codaichi test.txt
    
    • 補足
      • sudo(switch user and do)をつけることでスーパーユーザー(root)として実行することができるようになります。
      • システムの根幹に関わる作業を誰でもできるとセキュリティ上の問題があるため、スーパーユーザーのみが行うべき作業に関しては、sudoをつけます。
  • ps

    • できること:実行中のプロセスを表示します
    • コマンドの意味:process status
    • 使い方
      # 現在実行中のプロセスを表示する
      $ ps
    
  • kill

    • できること:ジョブやプロセスを終了します
      • プロセスを終了する場合には、プロセスIDを指定する必要があります。
    • コマンドの意味:kill
    • 使い方
      # プロセスID 1212を終了する
      $ kill 1212
    

終わりに

以上が今回学んだLinux Command です。

Commandにはさらにオプションもたくさんあり、より便利に利用することができます。

もちろん、全てのCommandを完璧に覚えられるわけではありません。

今回学習した中でも、頻度の高低はあると思うので、実際に使いながら覚えていこうと思います。