Linux 基本操作演習④ 「シェルスクリプト」

Linux の基本操作演習をやってみましょう。今回はシェルスクリプトについて扱います。
問題文で提示された操作を行い、結果を確認して下さい。
※本演習はUbuntuの環境を想定しています。

この記事はシリーズ記事です。全シリーズはこちらからご覧になれます。

目次

第1問

下記の操作を実行し、[結果]と同様であることを確認してください。
①ホームディレクトリにシェルスクリプトshell_1.shを作成
②ホームディレクトリに空のファイルhome.logを作成
shell_1.shに対し、下記の要件を満たすようなコマンドを記載
要件:ホームディレクトリのファイル一覧と今日の日付を ホームディレクトリのhome.logというファイルに「追記」する
shell_1.shを2回実行する
home.logを確認する

[結果]
home.logに、ホームディレクトリのファイル一覧と日付が2回記載されている

◆実行例◆

①touch shell_1.sh
②touch home.log
③vi shell_1.sh
!/bin/bash

date >> ~/home.log
ls ~ >> ~/home.log

④sh shell_1.sh
sh shell_1.sh
⑤cat home.log

第2問

下記の操作を実行し、[画面出力例]と同じ事が出来る事を確認してください。
①ホームディレクトリにシェルスクリプトshell_2.shを作成
shell_2.shに対し、下記の要件を満たすようなコマンドを記載
要件:キーボードから名前と生年月日を入力すると、入力された情報を表示フォーマットに沿って画面表示する
表示フォーマット: あなたの名前は「{入力した名前}」、生年月日は「{入力した生年月日}」です。
shell_2.shを実行する

[画面出力例]
名前を入力してください。
メディア太郎
生年月日を入力してください。
2024年12月25日
あなたの名前は「メディア太郎」、生年月日は「2024年12月25日」です。

◆実行例◆

①touch shell_2.sh
②vi shell_2.sh
!/bin/bash

echo 名前を入力してください。
read NAME
echo 生年月日を入力してください。
read BIRTHDAY
echo あなたの名前は「$NAME」、生年月日は「$BIRTHDAY」です。

③sh shell_2.sh

第3問(応用)

下記の操作を実行し、[結果]と同様であることを確認してください。
①ホームディレクトリにシェルスクリプトshell_3.shを作成
shell_3.shに対し、下記の要件を満たすようなコマンドを記載
要件:位置パラメータで入力した数字が6の倍数であるか調べ、6の倍数の場合は「○○は6の倍数です」、そうでない場合は「○○を6で割った余りは××です」と画面表示する
shell_3.shを実行する。実行する際、位置パラメータは102を与える。
shell_3.shを実行する。実行する際、位置パラメータは105を与える。

[画面出力例]
◆位置パラメータ102を与えた時
102は6の倍数です

◆位置パラメータ105を与えたとき
105を6で割った余りは3です。

◆実行例◆

①touch shell_3.sh
②vi shell_3.sh
!/bin/bash

if [ $(($1 % 6)) -eq 0 ]; then
echo $1は6の倍数です
else
echo $1を6で割った余りは$(($1 % 6))です

③sh practice3.sh 102
④sh practice3.sh 105

(Visited 49 times, 1 visits today)

記事をご覧いただきご質問がある場合は、以下のLINEからご連絡ください。

 

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

職業訓練校 エヌ・キャリア・アカデミー 講師の川田です。
PythonとC言語を担当しています。理解しやすく、学びやすい環境を提供することに力を入れています。
入った事の無いご飯屋さんにふらっ…と入り、「孤独のグルメ」のように一人で黙々と晩御飯を食べるのが週末の楽しみだったりします。
赤坂周辺で美味しいお店を見つけた際は、こっそり教えて下さい。

目次