1、history命令带上时间和用户
export HISTTIMEFORMAT="%F %T `whoami` "
2、设置时区并同步时间的定时任务
命令: ntpdate time.windows.com
定时任务脚本: ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime if ! crontab -l |grep ntpdate &>/dev/null ; then (echo "* 1 * * * ntpdate time.windows.com >/dev/null 2>&1";crontab -l) |crontab fi
3、设置ssh登陆超时时间
if ! grep "TMOUT=600" /etc/profile &>/dev/null; then echo "export TMOUT=600" >> /etc/profile fi
4、发送系统告警邮件
1、先安装 mailx 软件: yum install mailx -y 2、修改软件的配置文件: vim /etc/mail.rc 3、最下面填写邮箱信息: set from=pan_zhongjian@hoperun.com smtp=smtp.hoperun.com set smtp-auth-user=pan_zhongjian@hoperun.com smtp-auth-password=Pan123456 set smtp-auth=login 4、发送测试邮件命令: echo "这是个测试邮件!" |mail -s "monitor" 406662248@qq.com 5、注意,对应的邮箱服务器需要开启SMTP服务才可以发送
5、批量创建用户
脚本代码: #!/bin/bash USER_LIST=$@ USER_FILE=user.txt for USER in $USER_LIST; do if ! id $USER &>/dev/null; then PASS=$(echo $RANDOM |md5sum |cut -c 1-8) useradd $USER echo $PASS |passwd --stdin $USER &>/dev/null echo "$USER $PASS" >> $USER_FILE echo "$USER User create successful." else echo "$USER User already exists!" fi done 使用方法: chmod +x xxx.sh #给xxx.sh文件可执行权限 ./xxx.sh zhangsan lisi wangwu wocao
6、Linux四剑客 find、grep、awk、sed
find:查找文件用的,比如,按照文件名,文件类型,文件时间来查找某个目录下的文件等 -exec:他是 find 函数的参数,类似于管道符的作用,把前面命令的执行结果传给后面的语句进行执行使用 grep:检索文本内容用的,比如在某个文本中检索某个字符串的位置等 -E: grep 的参数, grep -E = egrep 按照正则表达式进行过滤查找 awk:把文本内容查找成表格形式,用空格分隔列,这样就可以查找某一行某一列的类容 -F: awk 的参数,用于按照给定字符分隔查找的结果,经常二者配合使用 sed:系统自动化操作文本的命令,它可以减去交互过程 -i: sed 的参数,写入的参数 -e: sed 的参数,修改输出终端
对于非运维的开发人员,学会这么写应该很实用了,无需再花费过多的时间去学习shell脚本了