1、统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来 getent passwd |grep -v "/sbin/nologin" | cut -d: -f1 getent passwd |grep -v "/sbin/nologin" | cut -d: -f1 |wc -l 2、查出用户UID最大值的用户名、UID及shell类型 getent passwd | cut -d: -f1,3,7 |sort -t: -k2 -n | tail -1 3、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序 netstat -tn | grep 'tcp' |tr -s " " : |cut -d: -f6 |sort -n 防止重复,可以加上uniq -c 去重 netstat -tn | grep 'tcp' |tr -s " " : |cut -d: -f6 |sort -nr |uniq -c 4、编写脚本createuser.sh,实现如下功能:使用一个用户名作为参数,如果指定参数用户存在,就显示存在,否则添加之,显示添加的用户的id号等信息 [ $# -eq 0 ] && { echo "usage: basename $0 USERNAME" ; exit 10; } id $1 &> /dev/null && { echo "用户已存在 "; exit 20;} useradd $1 &> /dev/null && { echo -e "$1 is created\ngetent passwd $1" ;echo 123456 |passwd --stdin $1 &> /dev/null ; } || { echo "Error!" ; exit 30; } 测试:如下图 5、编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等 编辑家目录的 vim .vimrc 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: jeff") call setline(5,"#QQ: 7494067xx ") call setline(6,"#email: 749406@qq.com") call setline(7,"#version: 3.27") call setline(8,"#date: ".strftime("%Y-%m-%d")) call setline(9,"#description: jeff test script") call setline(10,"#*") endif endfunc 保存退出 重新登录 随便创建一个脚本文件 vim test.sh