このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

Linux基礎:コマンド練習14

コマンド練習14

 「コマンド練習14」では、5章の中盤で登場したコマンドについて 練習問題を通して学びます。ここで扱うのは シェル変数、環境変数、printenvwhichtype です。

 Linux のシェルでは、変数を使って値を一時的に保持したり、プログラムに環境情報を渡すことができます。また、コマンドの実体を調べるために whichtype を使うことは、システム管理やトラブルシューティングで重要です。ここでは、これらを 表や図 で解説し、実際に試せる練習問題を提示します。最後に 「練習+模範解答例」 を掲載します。


コマンド解説

1.シェル変数と環境変数

シェルで定義する変数は大きく分けて2種類あります。

種類設定方法有効範囲
シェル変数VAR=value現在のシェルのみMYVAR=hello
環境変数export VAR=value子プロセスにも引き継がれるexport PATH=$PATH:/usr/local/bin
[ シェル変数 ] → 現在のシェルだけ有効
[ 環境変数 ] → 現在のシェル + 子プロセスで有効

2.printenv コマンド

現在設定されている環境変数を表示する。

使用例説明
printenvすべての環境変数を表示
printenv PATH環境変数 PATH の内容を表示

3.which コマンド

コマンドの実体ファイル(絶対パス)を表示する。

使用例説明
which lsls コマンドのパスを表示
which python3python3 がどこにあるか確認

4.type コマンド

コマンドの種類や定義を表示する。

使用例説明
type lsls がバイナリか組込みか表示
type cdcd はシェル組込みと表示

練習問題 + 模範解答例

問題1

シェル変数 MYVARhello を代入し、値を表示してください。
模範解答例

[user@rocky9 ~]$ MYVAR=hello
[user@rocky9 ~]$ echo $MYVAR
hello

問題2

 環境変数 MYENV を作成し、値を world に設定してください。その後、printenv を使って値を確認してください。
模範解答例

[user@rocky9 ~]$ export MYENV=world
[user@rocky9 ~]$ printenv MYENV
world

問題3

環境変数 PATH の内容を表示してください。
模範解答例

[user@rocky9 ~]$ printenv PATH
/home/user/.local/bin:/home/user/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin

問題4

ls コマンドの実体ファイルのパスを確認してください。
模範解答例

[user@rocky9 ~]$ which ls
alias ls='ls --color=auto'
	/usr/bin/ls

問題5

cd コマンドの種類を確認してください。
模範解答例

[user@rocky9 ~]$ type cd
cd はシェル組み込み関数です

問題6

シェル変数 MSG"My name is $USER" を代入し、

  1. シングルクォートで展開しない場合
  2. ダブルクォートで展開する場合
    の違いを確認してください。

模範解答例

[user@rocky9 ~]$ MSG='My name is $USER'
[user@rocky9 ~]$ echo $MSG 
My name is $USER

[user@rocky9 ~]$ MSG="My name is $USER"
[user@rocky9 ~]$ echo $MSG
My name is user

まとめ

「コマンド練習14」では、5章の中盤で登場したコマンドについて 学びました。

  • シェル変数と環境変数 の違いを理解し、値の引き継ぎ方を学習
  • printenv で環境変数を確認
  • which でコマンドの場所を特定
  • type でコマンドの種類を確認

これにより、Linux シェルでの 変数管理やコマンドの調査スキル を実践的に習得できます。