本篇主要寫一些 腳本 語句的使用。 計算1 50的和 為指定用戶發送線上消息 bash !/bin/bash username=$1 判斷格式是否正確 if [ $ lt 1 ] ;then echo "Usage: [message]" exit 1 fi 判斷用戶是否存在 if grep "^$ ...
本篇主要寫一些shell
腳本until
語句的使用。
計算1-50的和
#!/bin/bash
i=0
s=0
until [ $i -eq 51 ];do
let s+=i;let i++
done
echo $s
[root@localhost ~]# vim sum.sh
[root@localhost ~]# chmod +x sum.sh
[root@localhost ~]# ./sum.sh
1275
為指定用戶發送線上消息
#!/bin/bash
username=$1
# 判斷格式是否正確
if [ $# -lt 1 ] ;then
echo "Usage:`basename $0` <username> [message]"
exit 1
fi
# 判斷用戶是否存在
if grep "^$username:" /etc/passwd > /dev/null ;then :
else
echo "用戶不存在"
exit 1
fi
# 判斷用戶是否線上,不在則每5s聯繫一次
until who|grep "$username" > /dev/null ;do
echo "用戶不線上"
sleep 5
done
# 發送信息
mes=$*
echo $mes | write $username
[root@localhost ~]# vim message.sh
[root@localhost ~]# chmod +x message.sh
[root@localhost ~]# ./message.sh
Usage:message.sh <username> [message]
[root@localhost ~]# ./message.sh zhangsan hello
用戶不存在
[root@localhost ~]# useradd zhangsan && echo "000000" | passwd --stdin zhangsan
Changing password for user zhangsan.
passwd: all authentication tokens updated successfully.
[root@localhost ~]# ./message.sh zhangsan hello
用戶不線上
用戶不線上
^C
[zhangsan@localhost ~]$
[root@localhost ~]# ./message.sh zhangsan hello
[zhangsan@localhost ~]$
Message from root@localhost on pts/0 at 02:25 ...
zhangsan hello
EOF