1.统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
#] grep -v "nologin" /etc/passwd|wc -l
2、查出用户UID最大值的用户名、UID及shell类型
#] cut -d: -f1,3,7 /etc/passwd|sort -t : -k 2 -nr|head -n1
3、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
方法1:
]# w|tr -s " "|cut -d" " -f3|grep "^[0-9.]\{7,15\}"|sort -t . -k 4 -nr|uniq -c
方法2
]# w|sed -nr "s/.* ([0-9.]{7,15}).*/\1/p"|sort -t. -k 4 -nr|uniq -c
4、编写脚本 createuser.sh,实现如下功能:使用一个用户名做为参数,如果 指定参数的用户存在,就显示其存在,否则添加之;显示添加的用户的id号等 信息
#!/bin/bash
read -p "please input a username" NAME
UserCount=`cut -d: -f1 /etc/passwd|grep -w "$NAME"|wc -l`
if [[ $UserCount -eq o ]];then
useradd $NAME &>/dev/null
echo "$NAME is created"
echo "the id of $NAME is `id $NAME`"
else
echo "$NAME is existing"
echo "the id of $NAME is `id $NAME`"
fi
5、编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等
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: happy")
call setline(5,"#QQ: 437628586")
call setline(6,"#Date: ".strftime("%Y-%m-%d"))
call setline(7,"#FileName: ".expand("%"))
call setline(8,"#URL: http://www.php168.net")
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