Linuxはコマンドの種類が多くあるため、学び始めたばかりだと、
「どのコマンドから覚えればいいのかわからない」と感じる方も多いと思います。
Linuxはコマンド操作が中心です。
システム開発業務においても、ログ確認・ファイル操作・設定変更などの作業があり、
基本となるコマンドがわからないと作業自体をまともに進められません。

本記事は、業務でもよく使う基本コマンドを中心にまとめています。
Linuxコマンドを学びたい方・不慣れで困っている方は、参考にしてみてください。
Linux基本コマンド一覧
Linuxには多くのコマンドがありますが、
初心者の方が最初に覚えておきたいものとして、大きく次の4つに分類できます。
- ファイル・ディレクトリ操作系コマンド
- 検索系コマンド(文字列検索・ファイル検索)
- システム情報の確認系コマンド
- その他、覚えておくと便利なコマンド
特にファイル・ディレクトリ操作系コマンドや検索系コマンドは使用頻度が高く、
多くの作業の基礎となるため、優先して覚えることをおすすめします。
ファイル・ディレクトリ操作系コマンド
Linux環境では、どんな作業をする場合でもファイルやディレクトリの操作が必要不可欠です。
実際の作業でも、
- 作業ディレクトリへ移動
- ファイルの確認
- 新しいディレクトリの作成
といった操作の繰り返しで進めていきます。
ls(ファイル一覧表示)
ディレクトリ内にあるファイルやディレクトリを一覧表示するコマンドです。
Linuxで作業する上で、最も使用頻度の高いコマンドの一つです。
$ ls
file1.txt file2.txt dir1上記のように、現在のディレクトリに存在するファイルやディレクトリが表示されます。

後述のファイルコピーやファイル削除、ファイルの編集といった作業の前など、
現在のディレクトリにどんなファイルがあるかを確認するときに使用します。
【補足】
より詳細な情報(権限や更新日時など)を表示したい場合は、-l オプションをつけます。
$ ls -l
-rw-r--r-- 1 root root 1024 Jan 3 12:00 file1.txt
-rw-r--r-- 1 user user 2048 Jan 2 13:00 file2.txt
drwxr-xr-x 2 user user 4096 Jan 1 14:00 dir1先頭の「d」はディレクトリ、「-」はファイルを表しています。
-l オプション付きの確認は、次のような観点でファイルの情報を確認できます。
- 意図したファイルが更新されているか
- 想定外に更新された設定ファイルがないか
- ログファイルがリアルタイムで更新されているか

環境によっては、ll と入力して実行することで ls -l を実行できるよう
設定されていることもあり、筆者も作業の度に手癖のように使用しています。
また、ディレクトリにファイルが大量にある場合、
前述のls や ls -l では対象のファイルを探すのが大変なこともあります。
そんなときは、-tや -r オプションをつけると便利です。
$ ls -ltr
drwxr-xr-x 2 user user 4096 Jan 1 14:00 dir1
-rw-r--r-- 1 user user 2048 Jan 2 13:00 file2.txt
-rw-r--r-- 1 root root 1024 Jan 3 12:00 file1.txt-t オプションは更新時間順、-r オプションは逆順となるよう表示を並び替えるオプションです。
これにより、最近更新したファイルが最後に表示されます。
ファイルが一画面に収まらないくらい大量にある場合に、
最後に編集したファイルを探す手間を省くことができます。
cd(ディレクトリ移動)
指定したディレクトリを移動するコマンドです。
こちらも ls に並び、Linuxで作業する上で使用頻度が最も高いコマンドの一つです。
$ cd /home/dbg/work
特定のディレクトリに移動して作業したいときに使用します。
pwd(現在のディレクトリ表示)
現在、自分がいるディレクトリのパスを表示するコマンドです。
$ pwd
/home/userこのように現在のディレクトリのパスが表示されます。
主に、cd コマンドで想定したディレクトリに移動できたか、
今どのディレクトリで作業しているかを確認したいときに使用します。

今どのディレクトリ上で作業しているかを確認したいときに使用します。
mkdir(ディレクトリ作成)
新しいディレクトリを作成します。
$ mkdir test上記のように実行することで、「test」という名前のディレクトリが作成されます。

作業用のディレクトリを新しく作成したいときや、
ファイルを管理するためにディレクトリを分けたいときなどに使用します。
mkdir 実行時、すでに同じ名前のディレクトリが存在する場合は、エラーになります。
cp(ファイルコピー)
ファイルやディレクトリをコピーするコマンドです。
$ cp config.conf config.conf.bak上記のように実行することで、config.conf を config.conf.bak というファイル名でコピーします。
主に、設定ファイルなどファイルを編集する前にバックアップを作成、
ログファイルを一時的に退避したいときなどに使用します。

設定ファイルなどを一時的に変更する必要がある作業では、
変更前の状態にいつでも戻せるよう、
編集前に cp でバックアップを作成することを心がけています。
また、ディレクトリをコピーする場合は、 -r オプションをつける必要があります。
$ cp -r work work_bakmv(ファイル・ディレクトリの移動/ファイル・ディレクトリ名の変更)
ファイルやディレクトリの場所を移動したり、名前を変更したりするコマンドです。
$ mv file.txt backup/このように実行することで、file.txt を backup/ ディレクトリへ移動します。
また、次のように実行することで、file.txt から file_old.txt にファイル名を変更できます。
$ mv file.txt file_old.txtrm(ファイル削除)
ファイルやディレクトリを削除するコマンドです。
$ rm file.txt上記のように実行することで、「file.txt」というファイルが削除されます。

作業の途中で作成した一時ファイルのように、
不要になったファイルを削除したいときに使用します。
また、ディレクトリを削除したいときは、-r オプションをつける必要があります。
$ rm -r work 上記のように実行することで、workディレクトリが削除されます。
このとき、削除するディレクトリ内のファイルも含めて削除されます。
rm コマンドで削除したファイルやディレクトリは、基本的に元に戻すことができません。
そのため、削除する前に削除しても問題ないことを必ず確認してください。

筆者は過去に一度、試験環境で削除してはいけないディレクトリを削除してしまい、
原状復帰するために大変な思いをしました……。
このように、内容次第によっては多くの人に迷惑をかける結果に繋がります。
ファイル・ディレクトリの削除は、気をつけて実行することを心がけましょう。
検索系コマンド(文字列検索・ファイル検索)
Linuxでは、ログ解析や設定ファイルの内容を調べるためなど、
特定の文字列やファイル名でファイルを探す場面が頻繁にあります。
作業を効率よく進める上で、検索系のコマンドも必要不可欠です。
grep(文字列検索)
ファイル内に含まれる特定の文字列を検索するコマンドです。
$ grep error log.txt
[2026-03-20 12:01:23] error: failed to start service
[2026-03-20 12:05:47] error: invalid configuration上記の例では、log.txt の中から “error” の文字列を含む行が表示されます。
主にログファイルからエラーなど処理をトレースするときや、
設定ファイル内にある特定の項目を確認するときに使用します。

ログを調査する際は、まず grep で “error” や 関数名などで検索し、
確認すべき範囲を絞り込むところから始めることが多いです。
また、grepコマンドのシステム開発でよく使うオプションは、
次の記事でまとめています。
【Linux】grepコマンドの使い方|システム開発でよく使うオプションまとめ
find(ファイル検索)
指定した条件に沿ったファイルのありかを検索するコマンドです。
$ find . -name test.txt
/home/user/documents/test.txt上記の例では、カレントディレクトリから test.txt という名前のファイルを検索しています。
主に、ファイル名は判明しているが、そのファイルがどのディレクトリにあるかわからないときに使用します。

目的のファイルの名前は判明しているが、
そのファイルがどのディレクトリにあるかわからないときに使用します。
また、-name 以外の条件を指定することで、名前以外の観点からのファイル検索もできます。
条件の指定方法などの詳しい使い方については、以下の記事でまとめています。
【Linux】findコマンドでファイルを検索する方法|作業効率向上
システム情報の確認系コマンド
前述のファイル・ディレクトリ操作系コマンドや検索系コマンドのように使用頻度は高くないですが、
システムの現在時刻や日時、ハードウェア情報などを確認したいときがあります。
ここでは、システムの情報を確認する際に使うコマンドを紹介します。
date(日時確認)
現在の日付や時刻を表示するコマンドです。
$ date
Fri Mar 20 15:30:12 JST 2026このように、現在の時刻が出力されます。
システムの現在日時を確認したいときにも使用しますが、
次のように使うことで、ファイル・ディレクトリ名などに時刻情報を付与できます。
$ cp backup.tar.gz backup_$(date +%Y%m%d).tar.gz日時の出力内容は、フォーマットを指定することで自由にカスタマイズすることもできます。
dateコマンドの活用法については、以下の記事で詳しくまとめています。
【Linux】dateコマンドの使い方|よく使うフォーマットと実用例まとめ
df(ディスク容量確認)
ディスクの使用状況や空き容量を確認するコマンドです。
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 52428800 20971520 31457280 42% /
tmpfs 1024000 0 1024000 0% /dev/shm
/dev/sdb1 104857600 73400320 31457280 70% /dataデフォルトでは、上記のように1Kブロック単位で容量が表示されます。

作業を進める上で容量不足によるトラブルを未然に防ぎたいときなどに、
現在のディスク残量を確認する目的で使用します。
ディスク使用量が逼迫傾向にある環境で、
バージョン管理ツール(Gitなど)によるチェックアウトや、
ソースコードのコンパイルを行う際に容量不足が原因のトラブルが起きがちです。
ちなみに、筆者が勤める先の作業環境では、上記のようなトラブルは度々起こっています。

あまりに心当たりのないエラーが出力されたときは、
原因を切り分けるため、まずは df コマンドで確認してみるのもよいかもしれません。
また、-h オプションをつけることで、人間に読みやすい単位(GB / MB)で表示することもできます。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 50G 20G 30G 42% /
tmpfs 1.0G 0 1.0G 0% /dev/shm
/dev/sdb1 100G 70G 30G 70% /dataその他、覚えておくと便利なコマンド
「ファイル・ディレクトリ操作」「検索」「システム確認」に分類できないコマンドの中にも、
覚えておくと便利なコマンドはありますので、そういったコマンドを紹介します。
history(コマンド履歴の確認)
直近で使用したコマンドの履歴を表示するコマンドです。
$ history
1 ls
2 cd /home/dbg/work
3 mkdir testこのように直近で使用したコマンドの一覧が表示されます。
直近で実施したコマンド操作の内容を確認したいときや、
コマンドのオプションの指定方法をど忘れしたときなどに使用することが多いです。
また、表示された履歴は、番号を指定することで再実行することもできます。
$ !2
cd /home/dbg/workこのように「!2」と入力することで、履歴番号2のコマンドが再実行されます。
似たコマンドを何度も打ち直す手間が省けるため、覚えておくと便利です。
tar(アーカイブ作成・展開)
複数のファイルやディレクトリをまとめてアーカイブ、または展開するコマンドです。
【アーカイブ作成】
アーカイブとして .tar にまとめたいときは、 -cvf オプションを使用します。
-c がアーカイブ作成、-v アーカイブとしてまとめるファイルの一覧を表示、
-f がアーカイブファイル名の指定を意味します。
$ tar cvf archive.tar dir1/
dir1/
dir1/file1.txt
dir1/file2.txtdir1/の中に含まれるファイルすべてを archive.tar としてまとめます。
試験実施後のログファイルなど、
複数のファイルやディレクトリを一つのアーカイブにまとめたいときに使用します。
【アーカイブ展開】
アーカイブとしてまとめたファイルを展開したいときは、-xvf オプションを使用します。
-vfは作成時と同様、-x がアーカイブ展開を意味します。
$ tar xvf archive.tar
dir1/
dir1/file1.txt
dir1/file2.txtarchive.tar としてまとめたファイル一式が展開されます。
アーカイブとしてまとめたファイルを利用したいときに使用します。
【圧縮・解凍】
後述の gzip と組み合わせることで、複数のファイルをまとめて圧縮することができます。
-z が gzip 形式での圧縮・解凍を意味します。
// 圧縮
$ tar -zcvf archive.tgz dir1/
dir1/
dir1/file1.txt
dir1/file2.txt
// 解凍
$ tar -zxvf archive.tgz
dir1/
dir1/file1.txt
dir1/file2.txt解凍すると、元のディレクトリ構造のまま dir1/ とその中身が復元されます。
解凍前のファイルとディレクトリと同じ名前が存在する場合、上書きされるため注意してください。
gzip(ファイル圧縮・解凍)
ファイルを gzip 形式で圧縮したり、圧縮したファイルを解凍するコマンドです。
ファイルを圧縮したい場合、次のようにコマンドを実行します。
$ gzip file.txtfile.txt を圧縮して file.txt.gz に変換します。
また、圧縮ファイルを解凍したい場合は、次のようにコマンドを実行します。
$ gunzip file.txt.gzfile.txt.gz を解凍し、元のファイル file.txt に戻します。
主に、容量の大きなファイル(ログファイルなど)を圧縮し、
ファイルサイズを小さくして保管したいときに使用します。
chmod(権限変更)
ファイルやディレクトリのアクセス権限を変更するコマンドです。
アクセス権限には次の3種類があります。
- 読み取り権限:
r - 書き込み権限:
w - 実行権限:
x
$ chmod +x script.shこのようにコマンドを実行することで、script.sh に実行権限が付与されます。
主に、シェルスクリプトに実行権限を付与したい場合などに使用します。
また、chmod は数値でも権限を指定できます。
r(読み取り)=4、w(書き込み)=2、x(実行)=1 として、
所有者・グループ・その他の権限をそれぞれ合計した数値で指定します。
$ chmod 755 script.sh755 は、「所有者:読み取り・書き込み・実行(7)/
グループ:読み取り・実行(5)/その他:読み取り・実行(5)」を意味します。
シェルスクリプトには 755、設定ファイルなど実行不要なファイルには 644
(所有者は読み書き、グループ・その他は読み取りのみ)を指定することが多いです。
【補足】
ファイルのアクセス権限は、ls -l で確認することができます。
$ ls -l script.sh
-rw-r--r-- 1 user user 1234 Mar 20 12:00 script.sh先頭の「-rw-r–r–」がアクセス権限を表しています。
この状態では、シェルスクリプトに実行権限がありませんが、
「chmod +x script.sh」を実行することで、実行権限が付与されます。
$ ls -l script.sh
-rwxr-xr-x 1 user user 1234 Mar 20 12:00 script.shこのように x が追加され、シェルスクリプトなどを実行できるようになります。
sudo
通常のユーザー権限では実行できないコマンド操作を、管理者権限で実行するコマンドです。
$ sudo <実行したいコマンド>
[sudo] password for user:このように、実行したいコマンドの先頭に sudo とつけて実行します。
主に、パッケージのインストールやシステム設定の変更など、
root権限が必要な操作を実行するときに使用します。
実行時は、ユーザーのパスワード入力が必要です。
sudo を使うときは、システムへの影響が大きいことが多いため、注意して実行してください。
初心者がつまずきやすいポイント
Linuxのコマンドを学び始めたばかりだと、いくつかつまずくこともあるかと思います。
ここでは、特に多いポイントを紹介します。
コマンドが見つからない
よく遭遇するエラーの一つに、次のようなエラーがあります。
command not foundこのエラーは、主に次の原因で発生します。
- コマンドの打ち間違い
- ソフトウェア未インストール
これらは、which または type コマンドで確認できます。
$ which ls
/usr/bin/ls
$ which lls
(何も表示されない)上記のように何も表示されない場合、コマンド名の誤りか、
そのコマンドがインストールされていない可能性があります。
コマンドの打ち間違いによるエラーは、初心者に限らず発生するケースは多いです。
また、ソフトウェア未インストールについては、自力での解決は難しいと思われます。
それが作業に必要不可欠な操作な場合は、管理者に相談するなどしましょう。
パス(絶対パス・相対パス)
Linuxでは、ファイルやディレクトリの場所をパス(path)という形で指定します。
パスには次の2種類があります。
- 絶対パス:ルート(/)からのフルパス(例:/home/user/file.txt)
- 相対パス:現在のディレクトリからの相対的なパス(例:./file.txt)
相対パスは、実行時のカレントディレクトリによって指す場所が変わるという点に注意が必要です。
例えば、次のように同じ「file.txt」という相対パスを指定していても、
カレントディレクトリが異なれば、参照するファイルも異なります。
$ pwd
/home/dbg/work
$ cat file.txt
(/home/dbg/work/file.txt の中身が表示される)
$ cd /home/dbg/work_bak
$ cat file.txt
(/home/dbg/work_bak/file.txt の中身が表示される)初心者の方がよくつまずくのは、「さっきのディレクトリで動いたコマンドが、
別のディレクトリに移動した後は動かなくなる」というケースです。
これは、相対パスの参照先がカレントディレクトリに依存しているために起こります。
コマンドがうまく動かないときは、まず pwd で今どこにいるかを確認する習慣をつけると、
このようなミスを減らすことができます。
権限エラー
Linuxでは、ファイルやディレクトリに アクセス権限 が設定されています。
そのため、権限がないファイルやディレクトリに対して操作を行った場合に、
次のようなエラーが表示されることがあります。
Permission deniedこれはファイルやディレクトリに設定されたアクセス権限によって、
操作が制限されていることを示すエラーです。
実務でもよく遭遇するエラーです。
chmodコマンドで、権限を変更することで問題を解決できます。
権限の変更は、サーバーや現場ごとにルールが決められている場合もあるので、
管理者に確認するなど慎重に行う必要があります。
まとめ
Linuxには多くのコマンドがありますが、そのすべてを覚える必要はありません。
まずは、使用頻度の高い基本コマンドから、
実際の操作も交えながら少しずつ理解を深めていくことが大切です
本記事で紹介した主なポイントは次のとおりです。
- すべてのコマンドやオプションを覚える必要はない
- まずは、使用頻度が高いファイル・ディレクトリ操作系コマンドや検索系コマンドから覚える
- エラーに遭遇した際は、
原因を切り分けるための確認方法(which、ls -l など)を知っておくと対処しやすい
Linuxコマンドは、実際にコマンドを実行しながら学ぶことで理解しやすくなります。
基本コマンドに慣れてきたら、少しずつ新しいコマンドやオプションに視野を広げていきましょう。

また、Linuxの学習をこれから始める方は、
Linuxの基本的な考え方を次の記事でまとめているため、参考にしてみてください。
【Linux初心者向け】何から始める?|学習ロードマップ


コメント