shell脚本练习

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

egrep -v “/sbin/nologin$” /etc/passwd |wc -l
egrep -v “/sbin/nologin$” /etc/passwd | cut -d : -f 1

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

cat /etc/passwd|sort -nrk 3 -t:|head -1|cut -d: -f1,3,7

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

ss -ntu | grep “tcp”|awk ‘{print $6}’|cut -d: -f1|sort -n|uniq -c|sort -nr

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

cat createuser.sh
#!/bin/bash
id $1 &> /dev/null
[ “$?” -eq “0” ] && echo “$1 is exist.” || useradd $1
id $1

  1. 编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间描述等

cat>~/.vimrc<<EOF
autocmd BufNewFile *.sh exec “:call SetTitle()”
function SetTitle()
if expand("%:e") == ‘sh’
call setline(1,"#!/bin/bash")
call setline(2,"#")
call setline(3,"#")
call setline(4,"#Author: XXX")
call setline(5,"#QQ: XXX")
call setline(6,"#Date: “.strftime(”%Y-%m-%d"))
call setline(7,"#FileName: “.expand(”%"))
call setline(8,"#Description: The test script")
call setline(9,"#Copyright ©: “.strftime(”%Y")." All rights reserved")
call setline(10,"#
")
call setline(11,"")
endif
endfunc
autocmd BufNewFile * normal G
EOF

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值