我试图使用"案例"结构提供选项和"如果"实际执行操作。我在脚本编写方面非常新,所以请原谅我缺乏知识。为简化起见,我将跳过代码中的任何注释,并仅使用此脚本的1个(一个)选项。
#!/bin/sh
echo " 01. Select a new hostname"
read -p "Make your selection: " varSelection
case $varSelection in
1)
read -p "$(echo -e 'Enter hostname here: \n')" varHostName
read -p "¿Are u sure u want to use \" $varHostname \"? (y/n)"varHostNameRight
if [ $varHostNameRight == y ]; then
sed -i "s/^\(HOSTNAME\s*=\s*\).*\$/\1$varHostName/" /etc/sysconfig/network
hostname $varHostName
else
if [ $varHostNameRight == n ]; then
fi
;;
esac
在这个例子中,我想要实现的是,如果用户选择" y"在#34; 04"行中,在执行第6行和第7行之后,他返回到" case"菜单(实际上,案例中的选项比1更多))我不知道如何做到这一点:在我的脚本中应用每个选项后,我必须重新运行它以选择其他选项。 / p>
此外,如果用户选择" no"在排队" 04",我想"循环"排队" 03" ...但是,我不知道该怎么做:(
拜托,欢迎任何帮助!
致以最诚挚的问候,
Sebas
答案 0 :(得分:0)
使用while
循环:
while read -p "Make your selection: " varSelection; do
...
done
适当地和break
。