1、統計出/etc/passwd文件中其默認shell爲非/sbin/nologin的用戶個數 ,並將用戶都顯示出來
[root@C76 ~]# cat /etc/passwd |grep -v ‘sbin/nologin’ |awk -F’:’ ‘{print $1}’ #顯示用戶
[root@C76 ~]# cat /etc/passwd |grep -v ‘sbin/nologin’|wc -l #顯示用戶個數
2、查看用戶UID最大的用戶名、UID及shell類型
[root@C76 ~]# cat /etc/passwd |sort -t: -k3 -nr |awk -F’:’ ‘{print $1,$3,$7}’|head -1
3、統計當前連接本機的每個遠程主機的IP的連接數,並 按照從大到小排序
[root@C76 ~]# netstat -tun|grep “ESTABLISHED” |awk -F’ +|:’ ‘{print $6}’|sort -nr |uniq -c
4、編寫腳本createuser.sh,實現如下功能:使用一個用戶名作爲參數,如果指定參數的用戶名存在,就顯示其存在,否則添加之;顯示添加的用戶的id號等信息
腳本
[root@C76 ~]# cat createuser.sh
#!/bin/bash
read -p “create a username:” user
id KaTeX parse error: Expected 'EOF', got '&' at position 6: user &̲> /dev/null && …user is exist" && exit 1
useradd user" |passwd --stdin KaTeX parse error: Expected 'EOF', got '&' at position 17: …ser >/dev/null &̲& echo "user is create and the passwd is username"&& id $user
測試結果
5、編寫生成腳本基本格式的腳本,包括作者,聯繫方式,版本,時間,描述等
[root@C76 ~]# cat ~/.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: liubo")
call setline(5,"#QQ: 1163426929")
call setline(6,"#email: [email protected]")
call setline(7,"#version: 1.0")
call setline(8,"#date: “.strftime(”%Y-%m-%d"))
call setline(9,"#description: the test script")
call setline(10,"#")
endif
endfunc
測試結果
vim ll.sh