(本記事では、厳密さよりも「なんとなくこんなイメージ」を掴めるように執筆します!!)
Linux コマンドとは
結論:
- Linux コマンド = PC との会話です。
- もう少し言うと、PC の頭脳(LinuxOS)に Command(指示する) 言葉
- つまり、これからPCを操っていくITエンジア1年生がはじめに学ぶとよいものです!
ITエンジニアは、PCを自由自在に操りながら、さまざまなものづくりをしています。
- SNS アプリ
- EC サイト
- 金融・会計システム
これらを動かしているのは、サーバーや PC です
では、IT エンジニアはどうやって PC を自在に操っているのでしょうか?
その答えが「Linux コマンド」です!(※他にもあり👨)
Linux コマンドとは、PC(特に LinuxOS がインストールされたコンピュータ)を操作するための命令のことです。これは、CLI(Command Line Interface)で命令します。
普段 PC やスマホなどで親しんでいるのは、GUI(マウスや指を使った画面操作)です。ユーザーは使いやすいですよね。
けれど、もっと自由自在にPCを操るには言葉の方が融通は効きます。そこで IT エンジニアは、以下のようなターミナルなどの(CLI)を通して言葉でPCに指示を出します。
上記が、Linux にCommand(指示する) している例です。
Linux コマンドはどこで学べる?
Linux コマンドを体系的に学びたいときに役立つのが、「Linux 標準教科書」です。Linux の基本から応用までを網羅しているのでオススメです。
以下の URL からアクセスできます:
Linux 標準教科書
- 無料で利用可能
- kindleでもunlimitedで無料!
本記事でも最低限の Linux コマンドをまとめます
Linux コマンドを使いこなすために、まず覚えたい基本的なコマンドをまとめます。
本記事では、IT エンジニアが PC を操る際に必要なLinuxコマンドを以下のように、大きく2つに分けて整理します。
- PC 自体を操るコマンド 💻
- ネットワークを操るコマンド(複数の PC を繋げて協力させるコマンド )💻💻💻💻
1. PC💻 自体を操るコマンド
Linux コマンドを使うことで、PC 内部のファイルやディレクトリを操作できます。以下は、よく使うコマンドの一覧です。
基本的なコマンド一覧
-
pwd
現在のディレクトリ(作業している場所)を表示$ pwd /home/user
ちなみに、pwd(print name of working directory)ですね。
-
ls
現在のディレクトリ内にあるファイルやディレクトリを一覧表示$ ls file1.txt file2.txt folder/
ちなみに、ls(list)です。
-
cd
ディレクトリを移動$ cd folder
ちなみに、cd(change directory)です。
-
mkdir
新しいディレクトリを作成$ mkdir new_folder
ちなみに、mkdir(make directory)です。
-
rmdir
空のディレクトリを削除$ rmdir old_folder
ちなみに、rmdir(remove directory)ですね。
-
touch
空のファイルを作成$ touch new_file.txt
ちなみに、touch はファイルのタイムスタンプを更新する機能が本来の目的ですが、ファイルが存在しない場合は新規作成します。
-
less
ファイルを 1 画面ずつ表示(スクロール可能)$ less large_file.txt
ちなみに、less は「less is more」という言葉遊びから来ており、more コマンドの改良版だそうです
-
tail
ファイルの末尾を表示(ログ監視などに便利でよく使う)$ tail -f log_file.txt
ちなみに、tail(尾、末尾)という意味ですね。
-
rm
ファイルを削除$ rm unnecessary_file.txt
ちなみに、rm(remove)です。
-
mv
ファイルやディレクトリを移動または名前変更$ mv file1.txt new_folder/
ちなみに、mv(move)です。
-
cp
ファイルやディレクトリをコピー$ cp important_file.txt backup/
ちなみに、cp(copy)です。
-
ln
ファイルへのリンクを作成$ ln -s original_file.txt link_to_file
ちなみに、ln(link)です。
-
find
条件に合うファイルを検索$ find /home -name "*.txt"
ちなみに、find(探す)という意味そのままです。
-
chmod
ファイルのアクセス権限を変更$ chmod 755 script.sh
ちなみに、chmod(change mode)ですね。
-
chown
ファイルの所有者を変更$ chown user:group file.txt
ちなみに、chown(change owner)ですね。
プロセス管理コマンド
-
ps
実行中のプロセスを表示(dockerとかでもよく使います)$ ps aux
ちなみに、ps(process status)ですね。
-
kill
プロセスを終了$ kill 1234
ちなみに、kill は文字通り「こ◯す」という意味で、プロセスを終了させるために使います。
2. 複数の PC💻💻💻💻 を繋げて力を合わせるコマンド(ネットワーク)
複数のコンピュータがネットワークで繋がることで、サーバーやデータベースなどの協力が可能になります。この操作にも Linux コマンドが役立ちます。
ネットワーク関連のコマンド一覧
-
ping
指定した IP アドレスやホスト名に対して通信が可能かを確認$ ping google.com PING google.com (172.217.160.110): 56 data bytes 64 bytes from 172.217.160.110: icmp_seq=0 ttl=114 time=12.1 ms
ちなみに、ping はもともと潜水艦のソナーが発する音(=ping)に由来しています。ソナーが音波を発してその反響で障害物の有無や距離を測る仕組みと、pingコマンドがネットワーク上で応答を確認する仕組みが似ているため
-
ifconfig
ネットワークインターフェースの情報を確認。IP アドレスやネットワーク設定を確認・変更する際に使用$ ifconfig
ちなみに、ifconfig(interface configuration)です。
-
netstat
ネットワークの接続状況を確認。現在どのポートが使用されているかなどを把握する$ netstat -an
ちなみに、netstat(network statistics)です。
まとめ
以上、Linux コマンド(IT エンジニアの第一歩)でした!
ひとこと
- コメントをいただけると嬉しいです。
- 繋がることでいいエネルギーの循環を創り出すことができると信じています。
- Think Straight, Talk Straight !!
- 今日も最高の1日に。