小测试4

Q1: 统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
[root@CentOS7 ~]# getent passwd | grep -v /sbin/nologin | uniq -c
      1 root:x:0:0:root:/root:/bin/bash
      1 sync:x:5:0:sync:/sbin:/bin/sync
      1 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
      1 halt:x:7:0:halt:/sbin:/sbin/halt
      1 se:x:1000:1000:se:/home/se:/bin/bash
      1 s:x:1001:1001::/home/s:/bin/bash
      1 nginx:x:1002:1004::/home/nginx:/bin/bash
      1 varnish:x:1003:1005::/home/varnish:/bin/bash
      1 1:x:1011:1014::/home/1:/bin/bash
      1 mageia:x:1100:1100::/home/linux:/bin/bash
      1 slackware:x:2002:2019::/home/slackware:/bin/tcsh

[root@CentOS7 ~]# getent passwd | grep -v /sbin/nologin | wc -l
11
Q2: 查出用户UID最大值的用户名、UID及shell类型
[root@CentOS7 ~]# getent passwd | sort -t: -k3 -nr | head -1
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
Q3: 统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
[root@CentOS7 ~]# netstat -tun
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0     52 192.168.17.122:22       10.1.0.2:12613          ESTABLISHED
[root@CentOS7 ~]# netstat -tun | grep ESTAB
tcp        0     52 192.168.17.122:22       10.1.0.2:12613          ESTABLISHED
[root@CentOS7 ~]# netstat -tun | grep ESTAB | tr -s " " ":" 
tcp:0:52:192.168.17.122:22:10.1.0.2:12613:ESTABLISHED
[root@CentOS7 ~]# netstat -tun | grep ESTAB | tr -s " " ":" | cut -d: -f3
52
[root@CentOS7 ~]# netstat -tun | grep ESTAB | tr -s " " ":" | cut -d: -f3 | sort -nr 
52
[root@CentOS7 ~]# netstat -tun | grep ESTAB | tr -s " " ":" | cut -d: -f3 | sort -nr | uniq -c
      1 52
Q4:编写脚本 createuser.sh,实现如下功能:使用一个用户名做为参数,如果 指定参数的用户存在,就显示其存在,否则添加之;显示添加的用户的id号等 信息
脚本内容:
read -p "Please input your username: " AddName
USER_COUNT=`cat /etc/passwd | grep "^$AddName:" -c `
if [ $USER_COUNT -ne 1 ];then
    useradd $AddName
    echo Add success!
sleep 1
    echo "P@ssw0rd" | passwd $AddName --stdin &>/dev/null
    echo Password set !
else
    echo user exits
fi

[root@CentOS7 data]# sh createuser.sh 
Please input your username: u
Add success!
Password set !
[root@CentOS7 data]# sh createuser.sh 
Please input your username: u
user exits
Q5:编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等
vim ~/.vimrc
set nu "show line
set ts=4 "TAB 4 chars
syntax on "grammar light
set cursorline
"set mouse=a
set ai
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:                sE")
        call setline(5,"#QQ:                    *********")
        call setline(6,"#Date:                  ".strftime("%Y-%m-%d"))
        call setline(7,"#FileName:             ".expand("%"))
        call setline(8,"#URL:                   none")
        call setline(9,"#Description:          The test script")
        call setline(10,"#**********************************************************")
        call setline(11,"")
        endif
endfunc
autocmd BufNewFile * normal G
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值