菜鸟学Linux 第027篇笔记 until循环,脚本操作硬盘
脚本编程控制结构
顺序
选择
if
case
循环
for
while
until
while CONDITION; do
statement
...
done
进入循环:条件满足
退出循环:条件不满足
until条件和while条件相反
until CONDITION; do
statement
...
done
进入循环:条件不满足
退出循环:条件满足
for ((expr1; expr2; expr3)); do
循环体
done
awk 'PATTERN{ACTION}' file
注意''是单引号
-F 指定分隔符
action
$1 表示分隔后的第几段
$0 表示分隔后的所有段
NF the number of field统计字段个数
$NF 可以显示最后一个字段
写脚本
script1
通过ping命令测试192.168.0.1到100之间的原有主机是否在线
如果在线,就显示"ip is up.",其中的IP要为真正的IP,且以绿色显示
如果不在线,就显示"ip is down."其中IP要更换为真正的IP,且以红色显示;
要求:分别使用while, until和for(两种形式)循环实现。
script2
为指定硬盘创建分区
1.列出当前系统上所有的磁盘,让用户选择quit退出,
如果用户选择错误,就让用户重新选择。
2.当用户选择后,提醒用户确认接下来的操作可能会损坏数据,
并请用户确认如果y就继续,否则让用户重新选择;
3.抹除所选硬盘上的所有分区(提示抹除后执行sync命令,并让脚本睡眠3S后再分区)
并为用户创建三个主分区 第一个20M 第二个512M 第三个128M
并将第三个分区类型更改为swap
key
script1
#!/bin/bash
#
declare -i IP=34
#while [ $IP -le 40 ]; do
# if ping -c 1 -W 1 192.168.1.$IP &> /dev/null; then
# echo -e "\033[32m192.168.1.$IP is up.\033[0m"
# else
# echo -e "\033[31m192.168.1.$IP is down.\033[0m"
# fi
# let IP+=1
#done
#
#until [ $IP -eq 40 ]; do
# if ping -c 1 -W 1 192.168.1.$IP &> /dev/null; then
# echo -e "\033[32m192.168.1.$IP is up.\033[0m"
# else
# echo -e "\033[31m192.168.1.$IP is down.\033[0m"
# fi
# let IP+=1
#done
#
#for I in `seq 34 40`; do
# if ping -c 1 -W 1 192.168.1.$I &> /dev/null; then
# echo -e "\033[32m192.168.1.$I is up.\033[0m"
# else
# echo -e "\033[31m192.168.1.$I is down.\033[0m"
# fi
#done
for ((I=34;I<=40;I++)); do
if ping -c 1 -W 1 192.168.1.$I &> /dev/null; then
echo -e "\033[32m192.168.1.$I is up.\033[0m"
else
echo -e "\033[31m192.168.1.$I is down.\033[0m"
fi
done
script2
略,由于懒所以没有进行编写呵呵 !!高手略过
以后我再补上
本文转自Winthcloud博客51CTO博客,原文链接http://blog.51cto.com/winthcloud/1873958如需转载请自行联系原作者
Winthcloud