1、显示统计占用系统内存最多的进程,并排序。
ps aux|awk '{print $11,$4|"sort -k2 -nr"}'
top
c //显示完整的命令路径
M //照内存从大到小排序
2、编写脚本,使用for和while分别实现192.168.209.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"
注意: 以下代码不要复制粘贴,否则有错误。 代码中中的 ^[ 是在vim插入规模下按 crtl+v esc
#!/bin/bash
#
[ -f /etc/init.d/functions ] && . /etc/init.d/functions
NETID=192.168.209.
for HOSTID in {1..254};do
{
IP=${NETID}${HOSTID}
if ping -c 1 -W1 $IP &>/dev/null;then
action "^[[1;32m${IP}^[[0m" true
else
action "^[[1;31m${IP}^[[0m" false
fi
}&
done
wait
echo -e "finish\a"
#!/bin/bash
#
[ -f /etc/init.d/functions ] && . /etc/init.d/functions
NETID=192.168.209.
declare -i HOSTID=1
while [ $HOSTID -lt 255 ];do
{
IP=${NETID}${HOSTID}
if ping -c 1 -W1 $IP &>/dev/null;then
action "^[[1;32m${IP}^[[0m" true
else
action "^[[1;31m${IP}^[[0m" false
fi
}&
let HOSTID++
done
wait
echo -e "finish\a"
3、每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式 为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间
vim /data/scripts/backup.sh
#!/bin/bash
#
back_dest=/backup
back_src=/etc
if [ ! -d ${back_dest} ];then
mkdir ${back_dest}
fi
tar Jcvf ${back_dest}/etcbak-`date +"%F-%T" -s "-2 day"`.tar.xz ${back_src}
crontab -e
30 1 * * 1-5 /usr/bin/bash /bata/scripts/backup.sh &> /dev/null
4、工作日时间,每10分钟执行一次磁盘空间检查,一旦发现任何分区利用率高 于80%,就发送邮件报警
vim /scripts/checkdisk.sh
#!/bin/bash
#
df|awk '/\/dev\/sd/{print $1,int($(NF-1))}' > /disk.info
worn=80
while read PATTITION USE;do
if [ $USE -gt $worn ];then
echo "$PATTITION is userd ${USE}%" | mail -s "WORNING" root@localhost
fi
done < /disk.info
chmod +x /scripts/checkdisk.sh
crontab -e
*/10 * * * 1-5 /usr/bin/run-parts /scripts //可以运行/scripts目录下所有的脚本
日志查看
tailf /var/log/cron