LoginSignup
2
2

【初心者向け】Linuxについて簡単に理解しよう【レベル別】

Last updated at Posted at 2024-02-21

はじめに

Linux初心者の方にコマンドの使い方を理解して使ってもらうための記事です。よく使うコマンドから順に解説していきます!記事を読むのと同時に実際に端末エミュレータ(Linuxターミナル)に入力して動きを確かめることをおすすめします!

以下の環境でLinuxを使うことをおすすめします

OS ターミナル
Ubuntu22.04 端末(ターミナル)
Windows10以降 WSL2のターミナル

ディレクトリ構造について

コマンド操作をする前に、Linuxにおけるファイル管理について簡単に説明します。
Windowsのエクスプローラーというアプリを開いたらファイルがずらっとならんでいますが、あの中でpdfやWordファイルのような~~.pdf~~.docxというように、.が含まれるデータをファイルと言います。そのファイルを複数まとめて含んでいるものを フォルダ(ディレクトリ) と言います。

image.png

ターミナルで打ち込むコマンドとは、ディレクトリやファイル、その他Linuxの設定に対して何か操作を加えることです。

ディレクトリは階層構造になっていて、一番上をルートディレクトリと言い、記号で/と書きます。WindowsではCドライブの中にルートディレクトリがあります。

WindowsとLinuxのディレクトリ構成の違いは、Windowsはディスクごとにディレクトリが始まるのに対し、Linuxは必ずルートディレクトリが一つになっているということです。複数ディスクがあればマウントする(ディレクトリ構造のどこかにディスクを新たなディレクトリとしてくっつける)手法をとってます。

ユーザーが使うファイルの入っているディレクトリをホームディレクトリと言い、記号で~と書きます。ホームディレクトリはルートディレクトリの直下にあって、/homeとも書きます。

ホームディレクトリ以下にユーザーの扱うファイルが連なっていきますが、そのファイルの繋がりをパスと言います。パスは2種類あって、

  • ルートディレクトリから表していくことを絶対パス
  • カレントディレクトリから順に辿って表すことを相対パス

と言います。

現在いるディレクトリをカレントディレクトリと言い、記号で.と書きます。また、カレントディレクトリのすぐ上の階層のディレクトリ(親ディレクトリ)を..と書きます。

現在ホームディレクトリ直下のhogeというディレクトリ(記号で書くと~/hoge)にいると仮定してターミナルで書くと、

絶対パス:/home/user/hoge/hoge.txt
相対パス:./hoge.txt

となります。

ディレクトリ構造についてはコマンド操作をしていけば自然と理解できます!今は無理に理解しなくても構いません!

ターミナルの開き方

筆者はUbuntuでターミナルを使うので、Ctrl + Alt + Tと3つのボタンを同時に押します。

Screenshot from 2024-02-21 20-02-21.png

この画面がターミナルです。ターミナルの一番上のところに緑色の文字が見えますね。ここには筆者の場合

ubuntu@user:~ $

と書いてあります。これは

ユーザー名@コンピューター名:ディレクトリ名 $

という意味であり、筆者の場合 ubuntu というユーザー名が user という PC の ~(ホームディレクトリ)上で作業しているということを示しています。
 この入力欄左に常に表示されるこの文字列を プロンプトストリング(Prompt String) と呼びます。

Linuxのコマンドの処理について

この$の右を コマンドライン といい、実際にコマンドを入力する場所になります。ではこのコマンドラインでLinuxをどのように操作するのかというと、OSの中のLinuxカーネルというところがコマンドを処理します。コマンドを入力するターミナルを、OSの構成としてはシェルといいます。シェルはユーザとLinuxとの間のインターフェースの役割があります。

では、いよいよコマンドの紹介に移ります!

レベル1

まずは基本的なファイル操作を覚えましょう。このレベルが初心者の第一歩です、

cdコマンド

チェンジディレクトリ(Change Directiry) の略で、現在あなたの操作しているディレクトリから他のディレクトリに移動する時に使用するコマンドです。

方法

cd+スペース+行きたいディレクトリ名

Screenshot from 2024-02-21 20-03-40.png

青いところがそのディレクトリになっているでしょうか?

cdコマンドの Tips

  • cd だけ入力すると ホームディレクトリ ~ に戻ることができます。
    以下の例はホームディレクトリ上にある /foo/bar ディレクトリからホームディレクトリ ~ に戻ります。
    :~/foo/bar $ cd
    :~ $
    
  • cd - を実行すると一つ前のカレントディレクトリへ戻ることができます。
    以下の例は ~/foo/bar ディレクトリから ~/fuga/hoge ディレクトリに移動した後にもう一度 ~/foo/bar ディレクトリに戻ります。
    :~/foo/bar $ cd ~/fuga/hoge
    :~/fuga/hoge $ cd -
    :~/foo/bar $ 
    

lsコマンド

list segmentsの略で、カレントディレクトリの直下にあるファイルを表示するコマンドです。
 実行すると以下のようにカレントディレクトリ上にあるファイルやディレクトリを一覧表示します。

方法

Screenshot from 2024-02-21 20-04-56.png

青いところがディレクトリ
白いところがファイル
緑のところが実行ファイル

という分類があります。

他にも、コマンドの後ろに-を付けてオプションを足すことができて、

  • ls -a :隠しファイルを確認
  • ls -l :権限を確認

などの機能があります。

pwdコマンド

カレントディレクトリの絶対パスを表示するコマンドです。

方法

$ pwd
/home/ubuntu/python_learn/test

レベル2

レベル2では、レベル1で覚えたコマンドに加えて使うコマンドを紹介します。

rmコマンド

removeの略で、指定したファイル及びディレクトリを完全に消すコマンドです。通常の削除とは違い、このコマンドによって削除されたファイルは2度と修復できません。

方法

rm -rf turtle.py

-rfを付けることで、ディレクトリも含めて(-r)、強制的に(-f)、削除できます。

mkdir コマンド

make directoryの略で、カレントディレクトリ直下にディレクトリを作るコマンドです。

方法

試しにtestという名前のディレクトリを作ってみましょう!
Screenshot from 2024-02-21 20-06-50.png

lsコマンドでtestの名前があることを確認しましょう!

mkdir -pで連結させてディレクトリを作ることができます。

mvコマンド

moveの略で、カレントディレクトリ直下にあるファイルをそのパスの先に移動させるコマンドです。

方法

$ mv hello_button.py test/
$ cd test/
$ ls
hello_button.py

これもlsコマンドで確認しましょう!

cpコマンド

copyの略で、カレントディレクトリ直下にあるファイルをそのパスの先に複製するコマンドです。

方法

$ cp hello_button.py test/
$ cd test/
$ ls
hello_button.py

ディレクトリごとコピーしたい時は、cp -r を使います。

演習問題1:
ターミナルを開いて、自分のLinuxにあるディレクトリをlsで覗いたり、mvで移動させたり、mkdirでディレクトリを作って見よう。

レベル3

ここからは、初心者を脱して、Linuxに慣れた人の使うコマンドになります。

catコマンド

ファイルの中身を表示するコマンドです。

方法

cat [ファイル名]

lessコマンド

Leaner CSS 略で、ファイルの中身を1つのターミナルに表示するコマンドです。ファイルの中身が長い場合はスクロールすることができます。

方法

less [ファイル名]

kキーで上に、jキーで下に行きます。qキーで終了します。

findコマンド

<検索開始ディレクトリ>を起点にして、<検索条件>を満たすファイルのありかを探すコマンドです。

方法

日本語にすると以下です。

find <検索開始ディレクトリ> <検索条件> <アクション>

では、カレントディレクトリにあるfile-1.txtを探してパスを表示したいとなったら

find . -name file-1.txt -print

とします。-printの引数は付けなくてもいいです。

レベル4

少しレベルアップして、ユーザ権限を理解しよう。これができるとどのファイルも編集できるようになります!

sudoについて

レベル1はいわゆる初心者が必ずマスターするべきコマンドでした。初心者は管理者権限を知らなくても以上のコマンドは打ち込めたのですが、少し慣れてくると管理者権限が必要になるコマンドが増えてきますので、一応の意味は知っておきましょう!

sudoとは、super user doの略で、スーパーユーザというのが管理者という意味です。なので管理者権限で実行するべきコマンドの前に必ずこれを書きます。

私は普段このコマンドをすどうと呼んでいますが、正式にはスドゥーと呼びます。

chmodコマンド

change modeの略で、そのファイルの権限を変更するコマンドです。これは管理者権限が必要なのでsudoを付けます

一般的にはシェルスクリプトなどに実行権限を付与することが多いので、+xのオプションを付けます。

方法

$ sudo chmod +x entry_exec.sh

するとこのようにファイルが緑色になります。
Screenshot from 2024-02-21 15-20-57.png

ls -lコマンドを打ち込むと、

-rwxrwxr-x  1 ubuntu ubuntu   1378 12月 10 11:24 entry_exec.sh*

このように、左にある-rwxrwxr-xのように、すべてのユーザにxの文字(実行権限)が付いてることがわかります。

また、上記のユーザ権限の一覧に、wの文字が無いと書き込み禁止ファイルになりますので、sudoを使って管理者権限でファイルを変更することになります。

シャットダウン、再起動

sudoを学んだら、シャットダウン、再起動もコマンドラインから指定できるので、紹介します。

シャットダウン

sudo shutdown now

再起動

sudo reboot now

となります。コマンドラインからできると電源ボタンにカーソル合わせなくて良くて楽です!

おわりに

よく使うコマンドを整理して紹介しました〜。解説してほしいコマンドとかあれば教えてください!

参考文献

[1] 新しいLinuxの教科書

2
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2