メインコンテンツへスキップ
レッスン 5 / 12推定時間: 30

関数の定義と活用

シェルスクリプトでの関数定義、引数の扱い方、戻り値、スコープ、再利用可能なコードの作成方法を学習します

このレッスンの学習目標

  • 関数の定義と呼び出し方法を理解する
  • 引数と戻り値の扱い方を習得する
  • ローカル変数とグローバル変数を使い分ける
  • 再利用可能な関数ライブラリを作成できる

関数の基本

関数は、特定のタスクを実行するコードのまとまりです。コードの再利用性と保守性を向上させます。

関数の定義と呼び出し

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

引数を受け取る関数

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

戻り値

returnとecho

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

変数のスコープ

ローカル変数とグローバル変数

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

高度な関数の使い方

配列を扱う関数

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

再帰関数

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

関数ライブラリ

再利用可能な関数の作成

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

実践的な例

エラーハンドリング付き関数

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

演習問題

演習1: 数値検証関数

数値かどうかを検証し、指定した範囲内にあるかチェックする関数を作成してください。

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

演習2: ファイル統計関数

ディレクトリ内のファイル統計を表示する関数を作成してください。

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

まとめ

このレッスンで学んだこと:

  1. 関数の基本 - 定義、呼び出し、引数の扱い
  2. 戻り値 - returnとechoの使い分け
  3. 変数スコープ - ローカル変数とグローバル変数
  4. 高度な使い方 - 配列、再帰、エラーハンドリング
  5. 関数ライブラリ - 再利用可能なコードの作成

次のレッスンでは、コマンドライン引数の処理について学習します。

さらに学習を続けるには

素晴らしい学習ペースです!次のレッスンに進むには、無料会員登録をお願いします。無料会員では各コース3レッスンまで学習できます。

無料で続きを学ぶ

各コース3レッスンまで学習可能

学習進捗の自動保存

コース修了証明書の発行