
シェルスクリプトでメニュー選択画面より選択してコマンドを実行して結果を表示する。
エンターキーを押して再度メニューに戻る。
そういうスクリプト作成したいのですがうまくいきません。
下記では何が誤っていて不足しているのでしょうか? 正しい構文を教えて下さい。
・・・誤りばかりと思いますがすいません。
#!/bin/bash
PS3="メニューを選択して下さい。"
select ans in "$ans1" "$ans2" "$ans3" "終了!"; do
$ans1="ifconfig"
$ans2="df "
$ans3="netstat "
if [ -z "$ans1" ]; then
echo " $ans1."
read ifconfig
clear; while :; do echo -n "^[[1;1H"; ifconfig ; sleep 1; done
if [ -z "$ans2" ]; then
echo " $ans2."
read df
clear; while :; do echo -n "^[[1;1H"; df ; sleep 1; done
if [ -z "$ans3" ]; then
echo " $ans3."
read netstat
clear; while :; do echo -n "^[[1;1H"; netstat ; sleep 1; done
else
break
fi
case "$ans" in
"終了!")
break;;
"")
echo "終了";;
*)
esac
done
echo "Good bye."
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
ぼろぼろで、何をしたいのか不明なので、部分的な指摘だけになります。
ifに対してのfiが足りません。
if ~
then ~
fi
か、
if ~
then ~
else ~
fi
のようにしてください。
あと、
select ans in "$ans1" "$ans2" "$ans3" "終了!"; do
$ans1="ifconfig"
$ans2="df "
$ans3="netstat "
は、おそらく、
ans1="ifconfig"
ans2="df "
ans3="netstat "
select ans in "$ans1" "$ans2" "$ans3" "終了!"; do
また、
if [ -z "$ans1" ]; then
なども間違っていると思われますが、何をしたいのか不明なので、どう変えれば良い物か。
正直、「代入」とか「条件判断」の意味すらわかっていない人が書いたように見えます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
linuxのインストール
-
Core 2 Duo の古いパソコンに最...
-
インストールできないですどう...
-
LinuxでWine使うとどのくらいWi...
-
ubuntu 24 へのCanon 複合機ス...
-
VirtualBox 6.1 → 7.1 でUbuntu...
-
Linux のシェルスクリプトの強...
-
ubuntu(linux)のシャットダウン...
-
ubuntu が起動しない。
-
bashでシングルクォート内の変...
-
「/var/log」内のログの削除の...
-
Ububtuでファイル共有できない...
-
LinuxのノートパソコンでDVDコ...
-
ubuntuのシャットダウンが進ま...
-
ubuntuで デイスク/deb/loopと...
-
VirtualBox ゲストOSにPC内蔵HD...
-
linuxサーバーのキャッシュをク...
-
「トゥ]の出し方
-
WinSCPでLinux(CentOS6.10)に...
-
ubuntuのターミナルで書いたコ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンド終了ステータス
-
実行中のシェルスクリプト自体...
-
FTPコマンドの戻り値について
-
lsコマンドの色設定が反映されない
-
空白を含んだシェル変数の代入
-
cshの標準出力を制御したい
-
telnet へのパイプができないです
-
シェルの実行について
-
PHP4の Warning: pg_freeresul...
-
cshで変数名の入れ子ができない
-
kshでのcase文条件範囲について
-
Mac OSXのターミナルでemacsを起動
-
FedoraCore4 の.ba...
-
vsftpd FTP転送を行うシェルス...
-
複数の処理を順番にログアウト...
-
cygwinシェルスクリプト内での...
-
diskpart でパーティションの一...
-
ping -cコマンドで指定した個数...
-
コマンドでマクロの実行
-
時間を計算する方法
おすすめ情報