欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

vim&及文本操作命令练习

程序员文章站 2022-05-26 15:15:03
...
1.统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将其用户都显示出来
用户个数:
getent passwd | grep -v '/sbin/nologin$' | wc -l
用户:
getent passwd | grep -v '/sbin/nologin$' | cut -d: -f1

2.查出用户UID最大值的用户名、UID及shell类型
getent passwd  | cut -d: -f1,3,7 | sort -t: -k2nr | head -1

3.统计当前连接本机的每个远程主机的链接数,并按从到到小排序
netstat -nt | tr -s " " ":" | cut -d: -f6 | egrep -v [[:alpha:]]+ | egrep -v '^$' | sort | uniq -c

4.编写脚本createuser.sh,实现如下功能:使用一个用户名作为参数,如果指定参数的用户存在,就显示其存在,否则添加。显示提添加的用户的id号等信息。
#!/bin/bash
RED="\033[1;31m"
BLUE="\033[1;36m"
END="\033[0m"
[ $# -lt 1 ] && { echo -e "$RED Please input the username $END";exit 1; }
id $1 &> /dev/null && { echo -e  "$RED the $1 is already exsit $END";exit 1; }
echo -e  "$BLUE Start create the user $1... $BLUE"
useradd $1 &> /dev/null
echo "magedu" | passwd --stdin $1 &> /dev/null
echo -e  "$BLUE $1 is create sucessful and the id is `id -u $1` $END"

5.编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等
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:                solar")
             call setline(5,"#QQ:                    104363071")
             call setline(6,"#email:                 [email protected]")
             call setline(7,"#version:               1.0")
             call setline(8,"#date:                  ".strftime("%Y-%m-%d"))
             call setline(9,"#description:           solar'script")
             call setline(10,"#*************************************")
     endif
endfunc
相关标签: 运维

上一篇: Modern CMake

下一篇: vim基础操作