AWS インフラ・クラウド

【Linux】内部コマンドと外部コマンドの違い【シェル】

投稿日:2021年6月22日 更新日:

Linuxコマンドの中には、内部コマンドと外部コマンドがあります。
シェルスクリプトを書くときなどに知っておいた方が良い知識かなと思うので、紹介します。

内部/外部コマンドとは?

Linuxの内部コマンドは、Linuxに標準搭載されたコマンドです。
内部コマンドのパスは、/bin配下にあります。

一方外部コマンドは、Linuxに標準搭載されていないコマンドです。
Linuxのディストリビューション(Ubuntu, CentOSなどなど)のよって搭載されたものや、ユーザーが自信でインストール・作成したものを指します。
外部コマンドのパスは、基本的に/usr/bin配下にあります。
(/usr/local/binの場合もあります)

というわけで、違いをまとめると以下の通りになります。

内部コマンド外部コマンド
Linuxに標準搭載ディストリビューションによって異なる
/bin/usr/bin または /usr/local/bin
cd, mkdir などfind, gzipなど

使い分けを意識するとき

「なるほど、内部コマンドと外部コマンドの違いはわかった」という方でも、
「この知識どこで使うねん?」と疑問に思うと思います。

確かに、日常的にLinuxを触っていて、これらコマンドを意識することはありません。

しかし、シェルスクリプトを書くときは要注意です。

シェルスクリプトの実行環境(ディストリビューション、バージョン、パッケージ…etc)が全く同じであれば、何も意識しなくても良いですが、
もしかしたら環境が違う人が使うかもしれない場合は、コマンドはきちんと絶対パスで書くべきです。

特に、外部コマンドは環境によって異なる可能性が高いです。

想定していた通りの挙動にならない可能性も出てきますので、十分に注意してください。

ここまで読んでいただき、ありがとうございました。

Linux学習におすすめの教材

Linuxについて、しっかりと基礎から学びたい、実践的なスキルを身につけたいと考えている方向けに、おすすめの学習教材を紹介します。
これらの教材は、実際に僕が使っている教材になっています。

新しいLinuxの教科書

Linux自身の機能だけでなく、シェルスクリプトを使ったプログラミングや、Gitによるソフトウェア開発のバージョン管理など、イマドキのエンジニアなら知っておくべき知識についても、丁寧に解説しました!!

シンプルかつ網羅的にLinuxの基礎を学べる初学者・入門者に最適な一冊です。
サンプルのスクリプトもついており、実際に手を動かしながら学習することができます。

[改訂新版]プロのためのLinuxシステム構築・運用技術

キックスタートによる自動インストール、運用プロセスの理解、SAN/iSCSI、L2/L3スイッチ、VLAN、Linuxカーネル、systemd、ファイルシステム、問題判別ノウハウ、プロとしてのLinux技術。システム構築運用/ネットワーク・ストレージ管理の秘訣がわかる。Red Hat Enterprise Linux対応。

実務で通用するLinuxの構築・運用の基本や周辺技術を学ぶことができる書籍です。
イラストが多く概念的なところから理解しやすいです。
(電子版よりも紙版の方が読みやすくおすすめです)

-AWS, インフラ・クラウド
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

オンプレとAWSの違いって?【AWS入門】

こんにちは、yassanです。今回は「オンプレとAWSの違いって?【AWS入門】」についてお話しします。 最近、AWSやクラウドってどこかしこで聞きますよね。クラウドに馴染みのない方からしたら「なんか …

AWSのルートアカウントにGoogle二段階認証を適応する方法【画像付き手順紹介】

こんにちは、yassanです。今回は「AWSのルートアカウントにGoogle二段階認証を適応する方法」をご紹介します。 AWSのアカウント、その中でも特にルートアカウントは、最も権限の強いアカウントで …

EC2インスタンスの削除方法

こんにちは、yassanです。今回は「EC2インスタンスの削除方法」を紹介します。 EC2インスタンスの削除方法 まずは、AWSのManagement Consoleから、EC2サービスのダッシュボー …

AWS東京リージョン障害で学ぶ可用性

こんにちは、yassanです。今回は「AWS東京リージョン障害で学ぶ可用性」を紹介します。 昨日の深夜に東京リージョンにあるAZの一つで、障害が発生しました。このニュースに対して、ベストプラクティスに …

S3とは?学んだことをまとめてみた【初心者エンジニアのAWS備忘録⑥】

こんにちは、yassanです。今回は「S3とは?学んだことをまとめてみた【初心者エンジニアのAWS備忘録⑥】」を紹介いたします。 S3も、AWSを利用するうえで、基本的かつ重要なものになります。しっか …

yassanさんのプロフィール写真

yassan
インフラエンジニア。
独学でインフラ・クラウドについて学んでいます。
大阪 / 20代後半 / 決闘者 / FE / AWS-SAA

twitter: @yassan10787859