目標
- 内部コマンドと外部コマンドついて理解する
内部コマンドと外部コマンド
コマンドは大きく二種類に分けることができます。それが、「内部コマンド」と「外部コマンド」です。この ふたつは、次の違いがあります。
内部コマンド
内部コマンドは、シェルに組み込まれているコマンドです。これらは、シェル自体(例えば、BashやZsh)の一部として動作し、シェルのプロセス内で直接実行されます。内部コマンドは、シェルが直接管理しており、外部プログラムとしてファイルを実行するわけではありません。
例:cd(ディレクトリの移動)、echo(文字列の表示)、exit(シェルの終了)
外部コマンド
外部コマンドは、独立したプログラムとして存在しており、シェルがそれを実行するためには外部のプログラムを呼び出す必要があります。これらのコマンドはシェル内には存在せず、通常はファイルシステムのどこかに格納されています。
例:ls(ディレクトリの内容を表示)、grep(文字列検索)、cat(ファイルの内容を表示)
テキスト処理のコマンド
次のコマンドは「テキスト処理」を行うコマンドです。これらは、外部プログラムとしてシステム上にインストールされ、ファイルシステム内の特定の場所に格納されているプログラムです。
コマンド名 | 説明 | 使用例 |
---|---|---|
cat | ファイルの内容を表示します。全内容を標準出力に表示し、テキストファイルの内容確認に使用されます。 | cat file.txt |
cut | ファイルの各行から指定した部分を抜き出します。特定の列や文字数を切り出す際に使用します。 | cut -d ‘,’ -f 1,3 file.csv カンマ区切りで1列目と3列目を抽出 |
expand | タブ文字を指定した数のスペースに変換します。例えば、タブを 4 スペースに変換することができます。 | expand -t 4 file.txt タブを4つのスペースに変換 |
fmt | テキストを整形します。指定した幅でテキストを折り返して整形することができます。 | fmt -w 80 file.txt 幅80でテキストを折り返して整形 |
head | ファイルの先頭部分を表示します。デフォルトで最初の10行が表示されますが、行数を指定することも可能です。 | head -n 5 file.txt ファイルの先頭5行を表示 |
join | 二つのファイルを結合します。通常、2つのファイルの共通のフィールドを基にして行を結合します。 | join file1.txt file2.txt 2つのファイルを共通の列で結合 |
less | ファイルの内容を1画面ずつ表示します。長いファイルをスクロールして確認する際に便利です。ページ単位で内容を表示できます。 | less file.txt |
nl | 行番号を付けてファイルを出力します。ファイルの内容に行番号を付けて表示し、行番号付きでテキストの内容を確認できます。 | nl file.txt |
od | ファイルの内容をバイナリ形式や他のフォーマットで表示します。通常、16進数や8進数で内容を表示できます。 | od -x file.bin バイナリファイルの内容を16進数で表示 |
paste | 二つのファイルを縦に連結します。行単位で対応するファイルの内容を横に並べて表示します。 | paste file1.txt file2.txt |
pr | ファイルをページ単位で整形し、印刷向けにフォーマットします。ページ番号やヘッダーを追加することができます。 | pr file.txt |
sed | 文字列を置換します。正規表現を使って、ファイル内の文字列を検索し、置き換えることができます。テキストの編集に便利です。 | sed ‘s/old/new/g’ file.txt ファイル内の”old”を”new”に置き換え |
sort | 行単位で並び替えます。ファイル内の行をアルファベット順や数値順に並べ替えることができます。 | sort file.txt |
split | ファイルを分割して複数のファイルを生成します。指定した行数やバイト数ごとにファイルを分割することができます。 | split -l 100 file.txt 100行ごとにファイルを分割 |
tail | ファイルの末尾部分を表示します。デフォルトでは最後の10行を表示しますが、表示行数を変更することも可能です。 | tail -n 20 file.txt (ファイルの最後20行を表示) |
tr | 文字を一括変換します。指定した文字セットに従って、入力された文字を変換するコマンドで、文字の削除や置換などができます。 | echo “hello” | tr ‘a-z’ ‘A-Z’ |
uniq | 並び替え済みのファイルから重複した行を削除します。通常、並び替えたファイルで重複行を削除するために使用します。 | sort file.txt | uniq 例えば次の「file.txt」内をアルファベット順にソートできます。 apple banana apple orange banana |
unexpand | スペースをタブに変換します。連続したスペースをタブ文字に変換することができます。 | unexpand -t 4 file.txt 4つのスペースをタブに変換 |
wc | ファイルの大きさを調べます。ファイル内の行数、単語数、バイト数をカウントし、統計情報を表示します。 | wc file.txt |
ファイル操作のコマンド
次のコマンドは「ファイル操作」を行うコマンドです。これらも、外部プログラムとしてシステム上にインストールされ、ファイルシステム内の特定の場所に格納されているプログラムです。
コマンド | 説明 | 入力例 |
---|---|---|
bzip2 | ファイルを圧縮します(.bz2形式)。gzipより高い圧縮率を提供します。 | bzip2 file.txt file.txt.bz2 という圧縮ファイルが作成されます |
cp | ファイルやディレクトリをコピーします。元のファイルやディレクトリはそのまま残ります。 | cp source.txt destination.txt ※コマンド入力は一行です。 |
cpio | バックアップ用のファイルアーカイブツール。ファイルのアーカイブや復元を行います。 | find . -type f | cpio -ov > archive.cpio` ※コマンド入力は一行です。 |
dd | ファイルの変換やコピーを行います。低レベルなデータ操作(ディスクコピーなど)に使用されます。 | dd if=/dev/sda of=/dev/sdb bs=64K ※コマンド入力は一行です。 |
file | ファイルの種類を判別します。ファイルの内容に基づいて、バイナリファイル、テキストファイル、画像ファイルなどを識別します。 | file example.txt ファイルの種類を表示 |
find | ファイルやディレクトリを検索します。指定した条件に基づいて検索を行うことができます。 | find /home -name “*.txt” |
gzip | ファイルを圧縮します(.gz 形式)。テキストファイルやログファイルの圧縮によく使用されます。 | gzip file.txt file.txt.gz という圧縮ファイルが作成されます |
gunzip | gzipで圧縮されたファイルを解凍します。 | gunzip file.txt.gz |
ls | ディレクトリ内のファイルやディレクトリの一覧を表示します。 | ls -l 長形式でファイル情報を表示 |
mkdir | 新しいディレクトリを作成します。指定された名前で新しいフォルダを作成します。 | mkdir new_directory |
mv | ファイルやディレクトリを移動または名前変更します。ファイルの移動だけでなく、リネームにも使用されます。 | mv oldname.txt newname.txt ※コマンド入力は一行です。 |
rm | ファイルやディレクトリを削除します。-r オプションを使用することでディレクトリも削除可能です。 | rm -r director y_name |
rmdir | 空のディレクトリを削除します。ディレクトリ内にファイルがある場合は削除できません。 | rmdir empty_directory |
tar | ファイルをアーカイブして圧縮・解凍します。複数のファイルやディレクトリをひとつにまとめるのに使用されます。 | tar -cvf archive.tar file1.txt file2.txt ※コマンド入力は一行です。 |
touch | 新しい空のファイルを作成したり、既存のファイルのタイムスタンプを変更します。 | touch newfile.txt |
bzip2/bunzip2 | .bz2圧縮ファイルを作成・解凍します。gzipよりも高圧縮率を提供します。 | bzip2 file.txt(圧縮) / bunzip2 file.txt.bz2(解凍) |
今回は以上になります。

「Linux」おすすめ書籍6選【初心者・脱初心者用】| 現役エンジニア&プログラミングスクール講師「Linux」初心者の方がLinuxの操作や仕組みを理解するためのお勧めの書籍について取り上げています。また中級者として更に進んだ学習ができる書籍についても1冊取り上げています。ページの下部には「おすすめのITスクール情報」「おすすめ求人サイト」について情報を掲載中。...
ブックマークのすすめ
「ほわほわぶろぐ」を常に検索するのが面倒だという方はブックマークをお勧めします。ブックマークの設定は別記事にて掲載しています。

「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】について解説している記事です。削除方法も掲載しています。...

【パソコン選び】失敗しないための重要ポイント | 現役エンジニア&プログラミングスクール講師【パソコン選び】失敗しないための重要ポイントについての記事です。パソコンのタイプと購入時に検討すべき点・家電量販店で見かけるCPUの見方・購入者が必要とするメモリ容量・HDDとSSDについて・ディスプレイの種類・バッテリーの持ち時間や保証・Officeソフト・ウィルス対策ソフトについて書いています。...