入力引数を利用したシェルスクリプトの作成

Red Hat Enterprise LinuxBeginner
オンラインで実践に進む

はじめに

このチャレンジでは、コマンドラインからの入力パラメータを受け取り、それを処理するシンプルなシェルスクリプトの作成方法を学びます。シェルスクリプトは Linux 環境における強力なツールであり、繰り返しの作業を自動化し、ワークフローを効率化することができます。スクリプトへの入力操作をマスターすることで、特定のニーズに合わせて柔軟かつ動的に動作するスクリプトを作成できるようになります。これはシステム管理者にとって不可欠なスキルであり、RHCSA などの資格試験でも頻繁に問われる内容です。

入力パラメータを持つシェルスクリプトの作成

このステップでは、コマンドラインから 2 つの入力パラメータを受け取るシェルスクリプトを作成します。これらのパラメータは、スクリプト内で簡単な算術演算を行うために使用されます。入力パラメータの扱いを理解することは、柔軟で再利用可能なスクリプトを記述する上で非常に重要です。

タスク

  • ~/project ディレクトリに script.sh という名前のシェルスクリプトを作成してください。
  • スクリプトは 2 つの数値入力パラメータを受け取るようにしてください。
  • スクリプト内で、これら 2 つのパラメータの合計を計算してください。
  • 計算結果を標準出力に表示してください。

要件

  • シェルスクリプト名は必ず script.sh としてください。
  • スクリプトは ~/project ディレクトリ内に配置してください。
  • 1 番目と 2 番目の入力パラメータにアクセスするために、それぞれ $1$2 変数を使用してください。
  • 2 つの入力パラメータに対して加算(足し算)を行ってください。
  • 出力形式は、厳密に The result is: <sum> としてください(<sum> は計算された合計値)。

実行例

スクリプトを実行した際の動作例は以下の通りです。

[labex@host ~]$ mkdir -p ~/project
[labex@host ~]$ cd ~/project
[labex@host project]$ nano script.sh
## (スクリプトを作成して保存した後)
[labex@host project]$ chmod +x script.sh
[labex@host project]$ ./script.sh 10 20
The result is: 30
[labex@host project]$ ./script.sh 5 8
The result is: 13

ヒント

  • スクリプトファイルの作成と編集には nano などのエディタを使用できます。
  • 実行する前に、chmod コマンドを使用してスクリプトに実行権限を付与することを忘れないでください。
  • Bash では、算術演算は ((...)) または $[...] 構文を使用して行えます。例:result=$((num1 + num2))
  • ターミナルに結果を出力するには echo コマンドを使用します。
✨ 解答を確認して練習

まとめ

このチャレンジでは、入力パラメータを受け取り、それらを使用して基本的な演算を行うシンプルなシェルスクリプトの作成方法を学びました。スクリプトファイルの作成、実行権限の付与、および $1$2 を使用したコマンドライン引数へのアクセスを実践しました。スクリプト入力を扱う方法を理解したことで、より複雑なシェルスクリプティングのタスクに応用できる貴重なスキルを習得しました。このチャレンジは、Linux 環境でのタスク自動化に不可欠な、RHCSA 試験の目的の一つである「シンプルなシェルスクリプトの作成とスクリプト入力の処理」を補強するものです。