分享
 
 
 

6>>manage-account

王朝学院·作者佚名  2016-05-26
窄屏简体版  字體: |||超大  

6>>manage-account#!/bin/bash##Delete_user - Automates the 4 steps to remove an account#################################################################Define Functions################################################################function get_answer {#unset ANSWERASK_COUNT=0#while [ -z "$ANSWER" ]#While no answer is given,keeping asking......doASK_COUNT=$[ $ASK_COUNT + 1 ]#case $ASK_COUNT in #If user gives no answer in time allotted2)echoecho "Please answer the question."echo;;3)echo echo "One last try...please answer the question."echo;;4)echo echo "Since you refuse to answer the question..."echo "exiting PRogram."#exit;;esac#echo#if [ -n "$LINE2" ]then #Print 2 linesecho "$LINE1"echo -e $LINE2"\c"# "-e" Deal with paticualar character,'\c' is oppsite with '\n'.else#print 1 lineecho -e $LINE1"\c"fi##Allow 60 seconds to answer before time-outread -t 60 ANSWERdone#Do a little variable clean-upunset LINE1unset LINE2#}#End of get_answer function.###########################################################################function process_answer {#unset ANSWERecho "process_answer[y/n]?"read -t 30 ANSWERcase $ANSWER iny|Y|YES|yes|yEs|yeS|YEs|yES|Yes|YeS)#If user answer "yes" ,do nothing.;;*)#If user answers anything but "yes",exit scriptecho echo $EXIT_LINE1echo $EXIT_LINE2echo exit;;esac##Do a little variable clean-up#unset EXIT_LINE1unset EXIT_LINE2#}##End of process_answer function############################################################################End of Function Definitions############################################################################################# Mani Scripts ################################################################################################################################Get name of User Accout to check#echo "Step #1 - Determine User Accout name to Delete "echo LINE1="Please enter the username of the user"LINE2="account you wish to delete from system"get_answerUSER_ACCOUNT=$ANSWER##Call process_answer function#if user answers anything but "yes" ,exit script#EXIT_LINE1="Because the account,$USER_ACCOUNT is not"EXIT_LINE2="the one you wish to delete,we are leaving the script..."process_answer##############################################################################Check that USER_ACCOUNT is really an account on the system#USER_ACCOUNT_RECORD=$(cat /etc/passwd | grep -w $USER_ACCOUNT)#if [ $? -eq 1 ] #If the account is not found,exit script.then echoecho "Account ,$USER_ACOUNT,not found."echo "leaving the script..."echoexitfi#echo echo "I found this record:"echo $USER_ACCOUNT_RECORDecho#LINE1="Is this the correct User Account?[y/n]"get_answer###Call process_answer function:#if user answer anything but "yes" .exit script#EXIT_LINE1="Because the account ,$USER_ACCOUNT,is not"EXIT_LINE2="the one you wish to delete .we are leaving the script..."process_answer################################################################################Search for any running processes that belong to the use account#echo echo "Step #2 - Find process on system belonging to user Account"echo echo "$USER_ACCOUNT has the following processes running:"echo#ps -u $USER_ACCOUNT #List user processes runningcase $? in1)#No processes running for this user account#echo "There are no processes for this account currently running."echo;;0)#processes running for this User Account.#Ask Script User if wants us to kill the processes.#unset ANSWERLINE1="Would you like me to kill the processes(es)?[y/n]"get_answer#case $ANSWER iny|Y|yes|Yes|yEs|yeS|YEs|YeS|yES|YES)#if user answer 'yes'.#echo##Clean-up temp file upon signalstrap "rm $USER_ACCOUNT_Running_Process.rpt" SIGTERM SIGINT SIGQUIT##List user processes runningps -u $USER_ACCOUNT_Running_Process.rpt#exec < $USER_ACCOUNT_Runnning_Process.rpt#make report Std Input#read USER_PROCESS_REC#First record will be blankread USER_PROCESS_REC#while [ $? -eq 0 ]do#obtain PIDUSER_PID=$(echo $USER_PROCESS_REC | cut -d " " -f1)# output a line of characters,'cut -d "," -f2' will select second # part which splited by ",".Is same to" gawk '{print $2}' ".kill -9 $USER_PIDecho "Killed process $USER_PID"read USER_PROCESS_RECdone#echorm $USER_ACCOUNT_Running_Process.rpt # Remove temp report;;*)#If user answers anything but "yes",do not killecho echo "Will not kill the process(es)."echo;;esac;;esac########################################################################################## Create a report of all files owned by User Account#echoecho "step #3 - Find files on system belonging to user account"echo echo "Creating a report of all files owned by $USER_ACCOUNT."echo echo "It is recommended that you backup/archive these files."echo "and then do one of two things:"echo " 1) Delete the files"echo " 2) Change the files' ownership to a current user account."echo echo "Please wait .This may take a while..."#REPORT_DATE=`date +%y%m%d`REPORT_FILE=$USER_ACCOUNT"_Files_"$REPORT_DATE".rpt"##find / -user $USER_ACCOUNT > $REPORT_FILE 2>/dev/null# How to use "find"##There don't deal with $USER's file.echoecho "Report is conplete"echo "Namp of report:$REPORT_FILE"echo "Location of report:`pwd`"echo############################################################################################# Remove User Account echoecho "Step #4 - Romove user account"echoLINE1="Do you wish to remove $User_Account's account from system?[y/n]"get_answer## Call process_answer function:#if user answer anything but "yes" ,exit script#EXIT_LINE1="Since you do not wish to remove the user account."EXIT_LINE2="$USER_ACCOUNT at this time ,exiting the script..."process_answer#userdel $USER_ACCOUNT#delete user accountecho echo "User account $USER_ACCOUNT has been removed"echo ###END

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有