第五周作业
1、编写脚本 createuser.sh,实现如下功能:使用一个用户名做为参数,如果 指定参数的用户存在,就显示其存在,否则添加之;显示添加的用户的id号等信息
#!/bin/bash
read -p "请输入一个用户名:" USERNAME
if `id $USERNAME &> /dev/null`;then
echo "用户存在,用户ID为:`id $USERNAME`"
else
`useradd $USERNAME &>/dev/null`
`echo "123456"| passwd --stdin $USERNAME &>/dev/null`
`chage -d 0 $USERNAME`
echo "用户已添加,用户ID为:`id $USERNAME` 密码为:123456 首次登陆请修改密码"
fi
2、编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等
#!/bin/bash
cat >.vimrc<<EOF
set number
set tabstop=4
set cursorline
set autoindent
syntax on
set expandtab
autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()"
func SetTitle()
if expand ("%:e") == 'sh'
call setline(1, "#!/bin/bash")
call setline(2, "#")
call setline(3, "#*********************************************************#")
call setline(4, "#Author: zhan****")
call setline(5, "#Blog: https://www.cnblogs.com/handsomezhy/")
call setline(6, "#Date: ".strftime("%F %T"))
call setline(7, "#FileName: ".expand("%"))
call setline(8, "#Version: V1.0")
call setline(9, "#QQ: 4065*****")
call setline(10, "#Description: This is a production script.")
call setline(11, "#Copyright(C): ".strftime("%Y")." All rights reserved")
call setline(12, "#*********************************************************#")
call setline(13, "")
endif
endfunc
EOF
3、查找/etc目录下大于1M且类型为普通文件的所有文件
find /etc/ -type f -size +1M
4、打包/etc/目录下面所有conf结尾的文件,压缩包名称为当天的时间,并拷贝到/usr/local/src目录备份。
find /etc/ -name "*.conf"|xargs tar -zcvf /usr/local/src/`date +%F`.tar.gz
ls /usr/local/src/
2020-12-21.tar.gz
5、查找当前系统上没有属主或属组,且最近一个周内曾被访问过的文件或目录
find / -atime -7 -a -nouser -o -nogroup
6、查找/etc目录下至少有一类用户没有执行权限的文件
find /etc -not -perm /111

浙公网安备 33010602011771号