InfraAcademy

InfraAcademy Blog

Linuxコマンドのオプションとは?覚え方・調べ方・使い方を初心者向けに解説

| #Linux #コマンド

こんにちは、フルスタックエンジニアのryuです。

今回の記事では、Linuxコマンドのオプションの覚え方を解説します。

Linuxを学び始めると、ls -lcp -rのように、コマンドの後ろへ記号やアルファベットが付いていることに気づきます。

コマンド名だけでも覚えることが多いのに、オプションまで全部暗記するのは大変ですよね。

しかし、すべてのオプションを丸暗記する必要はありません。

よく使うものだけを実際に操作しながら覚え、わからないものはman--helpで調べるのが、もっとも現実的な方法です。

この記事では、短いオプションと長いオプションの違い、複数指定する方法、よくある勘違い、安全に試す方法まで解説します。

Linuxコマンドのオプションとは

オプションとは、コマンドの動作を変更するために追加する指定です。

たとえば、lsはファイルやディレクトリの名前を表示しますが、-lを付けると権限や所有者、サイズなどの詳細情報も表示します。

ls
ls -l

コマンドの基本的な形は、次のとおりです。

コマンド オプション 引数

ls -l /var/logで考えると、lsがコマンド、-lがオプション、/var/logが操作対象となる引数です。

要素 役割
コマンド ls 実行する処理
オプション -l 動作や表示方法を変更する
引数 /var/log 操作する対象を指定する

オプションを付けなければ、コマンドは標準の動作をします。

必要な場面だけオプションを追加すると考えると、理解しやすくなります。

Linuxコマンドのオプションの覚え方を解説

Linuxコマンドのオプションの覚え方は、次の3つです。

  • よく使うオプションの傾向を知る
  • man--helpで調べる
  • 実際の作業で繰り返し使う

最初から一覧表を暗記するのではなく、調べ方を覚えることが重要です。

共通のオプションを覚える

まず1つ目は、共通のオプションを覚えることです。

Linuxのコマンドには、似た意味で使われるオプションがあります。

オプション例 よくある意味 使用例
-a--all すべて表示する ls -a
-l 詳細形式で表示する ls -l
-r-R 再帰処理、逆順表示など cp -rsort -r
-i 実行前に確認する rm -i
-f 強制実行、ファイル指定など rm -fawk -f
-n 数値表示、行数指定など head -n 5
-v 詳細表示、バージョン表示など コマンドによって異なる
-h ヘルプ、人が読みやすい単位など df -h
--help ヘルプを表示する ls --help
--version バージョンを表示する grep --version

ただし、同じ文字でも意味はコマンドによって変わります。

たとえば、-hdfではサイズを読みやすい単位にするオプションですが、別のコマンドではヘルプを表示する場合があります。

df -h

-vも、詳細な処理を表示するverboseの場合と、バージョン表示の場合があります。

共通する傾向は覚えてもよいですが、意味を確認せず他のコマンドへ当てはめないようにしましょう。

manページやhelpオプションを使う

次にmanページやhelpオプションを使うことです。

manページとはマニュアルを表示するコマンドです。コマンドのオプションも載っています。

man ls

manページを開いたら、/を押して検索したい言葉を入力できます。

たとえば、recursiveを探す場合は次のように入力します。

/recursive

次の検索結果へ移動する場合はn、終了する場合はqを押します。

helpオプションもmanページ同様にコマンドの使い方やオプションを表示してくれます。

ls --help

長い説明を読みたい場合はman、利用可能なオプションをすぐ一覧したい場合は--helpが便利です。

manページの使い方はこちらの記事で詳しく解説しています。

【関連記事】Linuxのmanコマンドの使い方

コマンドを練習する

最後は、コマンドの練習です。

やはりオプションを覚えるためには、何回もコマンドを練習する必要あります。

ただし、同じコマンドを意味も考えずに入力するだけでは覚えにくいです。

オプションを付けない結果と、付けた後の結果を比較してみましょう。

ls
ls -l
ls -a
ls -la

表示結果のどこが変わったかを確認すると、-l-aの役割を理解できます。

コマンドを練習するためには、InfraAcademyという学習サービスがおすすめです。

コマンドの解説から、シミュレーションを使ったコマンドの練習までできます。

↓InfraAcademyの講座の一部です

上記以外にも、DNSサーバーの構築方法や、Dockerの設定方法などさまざまな講座があります。

インフラエンジニアに必要な知識が学習できます。

InfraAcademyで学習を始める

【関連記事】インフラ学習におすすめのサイトInfraAcademy

短いオプションと長いオプションの違い

Linuxコマンドのオプションには、主に短い形式と長い形式があります。

両方が用意されているコマンドでは、用途に応じて使い分けられます。

短いオプション

短いオプションは、ハイフン1つと1文字で指定する形式です。

ls -l

入力が短く、日常的な操作に向いています。

ただし、-lだけを見ても意味がわかりにくいため、慣れていないコマンドではマニュアルを確認しましょう。

長いオプション

長いオプションは、ハイフン2つと単語で指定します。

ls --all

単語で意味を推測しやすいため、スクリプトや手順書では長い形式が読みやすい場合があります。

すべてのコマンドに長いオプションがあるわけではなく、UNIX由来のコマンドや環境によって対応状況が異なります。

値を必要とするオプション

オプションによっては、追加の値が必要です。

たとえば、headで先頭5行を表示する場合は、次のように指定します。

head -n 5 access.log

長い形式では、次のように書けます。

head --lines=5 access.log

-nだけでは、何行表示するのか決まりません。

ヘルプの-n NUM--lines=NUMという記載を見たら、NUMの部分へ値を指定するという意味です。

複数のオプションを指定する方法

1つのコマンドへ複数のオプションを指定できます。

ただし、まとめて書けるのは、基本的に1文字の短いオプションです。

オプションを分けて書く

次のコマンドは、隠しファイルを含めて詳細表示します。

ls -a -l

オプションごとの意味が見やすいため、初心者は最初に分けて書いても問題ありません。

短いオプションをまとめる

-a-lは、次のようにまとめられます。

ls -al

順番を入れ替えたls -laも、通常は同じ動作です。

しかし、すべてのコマンドで自由にまとめられるとは限りません。

値を取るオプションを含む場合は、どこまでがオプションで、どこからが値なのかに注意します。

head -n 5 file.txt

慣れていないうちは、ヘルプに書かれた形式へ合わせるのが安全です。

ハイフンが付かない引数との違い

初心者のうちは、オプションと引数を混同しやすいです。

次のコマンドでは、-lがオプション、/etcが引数です。

ls -l /etc

引数は、ファイル名、ディレクトリ名、検索文字列、ユーザー名など、コマンドが処理する対象を指定します。

grep -n "error" app.log

この例では、-nが行番号を表示するオプション、errorが検索文字列、app.logが検索対象です。

コマンドを読むときは、コマンド・オプション・引数へ分解して考える習慣をつけましょう。

ファイル名がハイフンから始まる場合

ファイル名が-test.txtのようにハイフンから始まると、コマンドがオプションだと解釈する場合があります。

このようなときは、--を使ってオプションの終わりを示します。

rm -- -test.txt

--より後ろは、オプションではなく引数として扱われます。

カレントディレクトリを明示して、次のように指定する方法もあります。

rm ./-test.txt

特にrmmvでは、ファイル名を誤ってオプションとして処理しないよう注意してください。

helpコマンドと--helpの違い

help--helpは名前が似ていますが、使う対象が異なります。

Bashの組み込みコマンドを調べる場合は、helpを使います。

help cd
help export

cdはシェル自身が実行する組み込みコマンドのため、一般的な外部コマンドと動作が異なります。

コマンドの種類は、typeで確認できます。

type cd
type ls

次のように表示されます。

cd is a shell builtin
ls is aliased to 'ls --color=auto'

一方、lsgrepなどの外部コマンドでは、コマンド --helpを使うのが一般的です。

grep --help

コマンドによっては-hしか対応していない場合や、ヘルプの表示方法が異なる場合もあります。

オプションの意味を調べる方法

わからないオプションが出てきたら、推測だけで実行しないようにします。

次の順番で調べると効率的です。

1.--helpで一覧を確認する

まずは、コマンド自身のヘルプを確認します。

cp --help

表示が長い場合は、lessへ渡すと読みやすくなります。

cp --help | less

/recursiveのように検索し、qで終了できます。

2.manページで詳しい説明を読む

概要だけではわからない場合は、manページを確認します。

man cp

危険な操作や、既存ファイルをどのように扱うかも説明されています。

3.typeで実体を確認する

同じ名前でも、エイリアス、シェル関数、組み込みコマンド、実行ファイルのいずれかである可能性があります。

type -a ls

エイリアスによって、自動的にオプションが追加されていることもあります。

実行結果が予想と違うときは、コマンドの実体を確認しましょう。

危険なオプションは暗記より確認を優先する

オプションによっては、確認を省略したり、ファイルを再帰的に削除したりします。

代表的な例がrm -rfです。

rm -rf directory

-rはディレクトリを再帰的に処理し、-fは確認や一部のエラー表示を省略して強制的に進めます。

学習中に意味を確認するだけなら、実際の重要なディレクトリへ実行しないでください。

練習用ディレクトリを作り、中身を確認してから試します。

mkdir -p ~/option-practice/test
ls -la ~/option-practice
rm -ri ~/option-practice/test

-iを使うと確認しながら削除できます。

私は10年以上エンジニアとしてLinuxを扱っていますが、慣れているコマンドほど実行前に対象を再確認します。

特に削除、上書き、権限変更では、オプションを知っていることより、対象が正しいことを確認する方が重要です。

オプションを覚えるための練習問題

ここまでの内容を、実際のコマンドで確認してみましょう。

専用の練習ディレクトリを作成します。

mkdir -p ~/option-practice
cd ~/option-practice
touch file1.txt file2.txt .hidden.txt
mkdir dir1

練習1.隠しファイルを確認する

まず、通常のlsを実行します。

ls

次に、-aを付けます。

ls -a

.hidden.txtだけでなく、...も表示されることを確認してください。

練習2.詳細情報を表示する

次の2つを比較します。

ls -a
ls -al

-lを追加すると、権限、リンク数、所有者、グループ、サイズ、更新日時が表示されます。

練習3.行数を指定する

/etc/passwdの先頭3行を表示します。

head -n 3 /etc/passwd

-nの後ろへ別の数字を指定し、表示行数が変わることを確認しましょう。

練習4.ヘルプから答えを探す

ls --helpを実行し、ファイルサイズを読みやすい単位で表示するオプションを探します。

見つけたら、次のように実行します。

ls -lh

答えを先に暗記するより、ヘルプから必要な情報を探せることが大切です。

Linuxコマンドのオプションを覚えるコツ

最後に、学習を続けるためのコツを整理します。

すべてのオプションを一覧表で覚えようとしないことが、結果的に近道です。

よく使う組み合わせを作業単位で覚える

-lだけを覚えるのではなく、どの作業で使うのかと一緒に覚えます。

やりたいこと コマンド例
隠しファイルを含めて詳細表示 ls -la
ディレクトリをコピー cp -r source destination
行番号付きで検索 grep -n "error" file
先頭10行を表示 head -n 10 file
読みやすい単位で容量確認 df -h

作業とセットで覚えると、必要な場面で思い出しやすくなります。

自分用のコマンド履歴を残す

初めて使ったコマンドは、目的と結果を短くメモします。

ls -la          隠しファイルを含めて詳細表示
head -n 20      先頭20行を表示
grep -n error   errorを検索して行番号も表示

ただし、パスワードや秘密鍵などの機密情報をメモへ残さないようにしてください。

覚えられないことを気にしない

実務のエンジニアでも、すべてのコマンドオプションを覚えているわけではありません。

頻繁に使うものは自然に覚え、利用頻度の低いものはその都度調べます。

調べずに曖昧な記憶で実行するより、数秒かけてヘルプを確認する方が安全です。

まとめ

今回の記事では、Linuxコマンドのオプションの覚え方を解説しました。

オプションは、コマンドの動作や表示方法を変更するために使います。

短いオプション、長いオプション、値を必要とするオプションがあり、同じ文字でもコマンドによって意味が異なります。

まずはls -lahead -ngrep -nなど、よく使う組み合わせから覚えましょう。

わからない場合は、次の方法で調べます。

コマンド --help
man コマンド
type コマンド

削除や上書きを伴うオプションは、練習環境で対象を確認してから実行してください。

オプション以外にもコマンド自体の覚え方を知りたい方は、次の記事も参考にしてください。

【関連記事】Linuxコマンドの覚え方を現役エンジニアが解説

Linuxコマンドをブラウザ上で練習したい方は、InfraAcademyのLinux入門講座をご覧ください。

Linux入門講座を見る

Next Action

記事で読んだ内容を、講座で実装してみましょう

InfraAcademyでは、ブラウザ上でLinuxやネットワークの実践環境を使いながら学習できます。無料で始められる講座から、学習の流れを試せます。

この記事を書いた人

ryu

InfraAcademy運営 / エンジニア

エンジニア歴10年。Linux、ネットワーク、クラウドを中心に、実務で役立つインフラ技術を初心者にもわかりやすく解説しています。

X: @ryu63614894

Related

関連記事

ブログ一覧へ

Roadmap

まずはこの4講座から

ログインすれば無料で始められる講座です。気になったテーマから手を動かして学べます。

講座一覧を見る