1、统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
grep -vc "/sbin/nologin" /etc/passwd
grep -v "/sbin/nologin" /etc/passwd |cut -d: –f1
2、查出用户UID最大值的用户名、UID及shell类型
getent passwd | sort -t: -k3 -nr|head -n1|cut -d: -f1,3,7
3、统计当前连接本机的每个远程主机IP的连接数,并按照从大到小排序
netstat -nt |tr -s " " % |cut -d% -f5|grep -o "[0-9.]\{7,15\}"|sort|uniq -c|sort -nr
4、编写脚本createuser.sh, 实现如下功能: 使用一个用户名作为参数,如果指定参数的用户存在,就显示其存在,否则添加之,显示添加的用户的id号等信息
set -ue
if [ $# -eq 0 ]; then
{ echo "Usage: `basename $0` USERNAME";exit 10; }
elif id $1 &>/dev/null ;then
{ echo "The User is exist !";exit 11; }
elif useradd $1 &>/dev/null ;then
echo "The user is created,Id is `id -u $1`"
fi
5、编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等
用户家目录下编辑.vimrc
set ignorecase
set cursorline
set autoindent
autocmd BufNewFile *.sh exec ":call SetTitle()"
func SetTitle()
if expand("%:e") == 'sh'
call setline(1,"#!/bin/bash")
call setline(2,"#")
call setline(3,"#********************************************************************")
call setline(4,"#Author: dingxuetao")
call setline(5,"#QQ: 269810520")
call setline(6,"#Date: ".strftime("%Y-%m-%d"))
call setline(7,"#FileName: ".expand("%"))
call setline(9,"#Description: The test script")
call setline(10,"#Copyright (C): ".strftime("%Y")." All rights reserved")
call setline(11,"#********************************************************************")
call setline(12,"")
endif
endfunc
autocmd BufNewFile * normal G