linux筛选和脚本知识点整理

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

执行语句:cat /etc/passwd |grep -v /sbin/nologin显示用户 #通过grep语句筛选出/sbin/nologin的用户,在通过-v反向筛选出不是/sbin/nologin的用户

root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
li:x:1000:1000:li:/home/li:/bin/bash

执行语句cat /etc/passwd |grep -v /sbin/nologin |wc -l统计个数

5

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

cat /etc/passwd |sort -t: -k3 -n|tail -1|cut -d: -f1,3,7 #先通过sort以:为字段界定符,以第三个字段进行排序,然后通过tail去最后一行,为UID最大的用户,再通过cut以:为字段界定符筛选出第一,三,七个字段,即用户名,UID和shell类型

nfsnobody:65534:/sbin/nologin

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

netstat -nt|tr -s " " :|cut -d: -f4|uniq -c|sort -nr #先通过tr把重复的空白格替换成:,然后用cut把第四个字符的ip剪切出来,用uniq统计重复出现的ip次数,用sort -nr进行从大到小的排序

      1 192.168.160.129

4、编写脚本 createuser.sh,实现如下功能:使用一个用户名做为参数,如果 指定参数的用户存在,就显示其存在,否则添加之;显示添加的用户的id号等 信息

#! /bin/bash


read -p " Please enter your username: " NAME

if id -u $NAME > /dev/null 2>&1 ;then
        echo "$NAME already exists"
else
        useradd $NAME
        id $NAME
fi

createuser.sh  创建新用户wang并显示用户ID等信息
 Please enter your username: wang
uid=1002(wang) gid=1002(wang) groups=1002(wang)

createuser.sh 用户li提示用户已存在
 Please enter your username: li
li already exists

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:                            li")
        call setline(5,"#QQ:                         294584230")
        call setline(6,"#email:               294584230@qq.com")
        call setline(7,"#version:                          1.0")
        call setline(8,"#date:                      ".strftime("%Y-%m-%d"))
        call setline(9,"#description:                     text ")
        call setline(10,"#************************************")
    endif
endfunc

#!/bin/bash
#
#*************************************
#author:                            li
#QQ:                         294584230
#email:               294584230@qq.com
#version:                          1.0
#date:                      2020-05-06
#description:                     text 
#************************************

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值