5- shell 综合应用
5.1 每天将指定目录备份到指定路径。
1 | !/bin/bash |
写入定时任务:
1
2crontab -l
crontab -e写入:(每天凌晨2点备份)
1
0 2 * * * bash文件路径 备份路径
5.2 发送消息
使用linux自带的mesg和write工具像其他已登录的用户发送消息。
1
2
3who -T #查看当前有几个用户登录,以及是否打开消息功能(+代表打开)
mesg y #打开消息功能
write 用户名 控制台名 #who命令获得控制台名1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28!/bin/bash
read user msg_enable terminal <<< $(who -T | grep -i -m 1 "$1" | awk '{print $1,$2,$3}') #-i忽略大小写,-m取一条
if [ -z "$user" ] #-z判断是否为空,用户是否登录
then
echo $1不在线
exit
elif [ "$msg_enable" != '+' ]
then
echo $1无法接收消息
exit
elif [ -z $2 ] #是否有消息
then
echo 没有消息发送
exit
else
message=$(echo $* | cut -d " " -f 2-)
echo $message | write $user $terminal
fi
if [ $? != 0 ]
then
echo 发送失败
else
echo 发送成功
fi
exit