其他分享
首页 > 其他分享> > 第四周

第四周

作者:互联网

统计出/etc/passwd文件中默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
 图片.png


查出用户UID最大值的用户名,UID及shell类型

图片.png

 
统计当前连接本机的每个远程主机的IP连接数,并按从大到小排序

图片.png


编写脚本createuser.sh,实现如下功能:使用一个用户名做为参数,如果指定参数的用户存在,就显示其存在,否则添加之;显示添加的用户的id号等信息
脚本思路如下:
4.1    判断是否有参数传入脚本
4.2    通过传入的用户名判断系统中是否存在相同的用户
4.3    我这里判断了一次系统的组中是否有和传入用户名称相同的组

#!/bin/bash

[ $# -eq 0 ] && { echo Usage: $0 username; exit 10; }

cat /etc/passwd | grep "$1" > /dev/null
[ $? -eq 0 ] && { echo user "$1" already exists; exit 20; }

cat /etc/group | grep "$1" > /dev/null
[ $? -eq 0 ] && {
echo group “$1” exists - if you want to add this user to that group; exit 30;
}

useradd $1
id  $1


编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等
编辑家目录中的 .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:    Lee")
    call setline(5,"#qq:    332454321")
    call setline(6,"#Blog:   https://blog.51cto.com/10785760 ")
    call setline(7,"#Date:  ".strftime("%Y-%m-%d"))
    call setline(8,"#FileName:  ".expand("%"))
    call setline(9,"#Description:   Study")
    call setline(10,"#----------------------------------------")
    call setline(11,"#")
    call setline(12,"")
    endif
endfunc
autocmd BufNewFile * normal G

 图片.png

新建一个后缀名为.sh的文件
vim test.sh

图片.png

标签:group,用户,sh,call,setline,四周,eq
来源: https://blog.51cto.com/10785760/2492152