シェルスクリプトのユーザー管理

#!は/ usr / binに/ envをbashの

############################### 
#スクリプト名:userManager.sh# スクリプト機能:アカウント管理#1 
#スクリプトパラメータ:なし#1 
#が作成:2019年7月25日#1	 
#著者:Mr.Guo#の	 
#バージョン:v1.0の番号	 
############### ################ 

#メッセージ[] <( - )
note_message(){ 
	CAT << EOF 
	-------- ------ユーザー・マネージャ----- 
		1.ユーザー作成
		2.削除ユーザ
		3.ロックユーザ
		ユーザーロック解除4. 
		5.スクリプトが終了
EOF 
} 

(:文字列は、passwd列ユーザ) - #アカウント[] <作成
CREATE_USER(){ 
	ユーザー=」を1 $ " 
	PWD =" $ 2 " 

	useraddの" $ユーザーは、 "アカウントの#は追加
	の$ PWDをエコー" "| passwdの--stdin "$ユーザ「#パスワード
	
	[[ "?$" == 0]] IF; 
	   その後、
		エコー"ユーザーが正常に作成された" 
		出口
	Fiが
} 

#アカウント[] <削除- (ユーザー:String)を
DELETE_USER(){ 
	ユーザー= "$ 1" 

	userdelの"$ユーザーを" #ユーザを削除
	
	[[ "$?" == 0] IF; 
	   次いで
		エコー"削除された$ {ユーザ}ユーザ" 
	Fiを
} 

#ロックアカウント[] < - (ユーザー:String)を
lock_user(){ 
	ユーザー= "$ 1" 
	= $ STAT(のpasswd -S "ユーザ$" | AWK '{} $ 2印刷')
	
	[[ "$ STAT" == "PS"]] IF; 
	   その後
		のpasswd -l "$ユーザ" 
	Fiの
	
	[[「$ STAT IF "==" LK "]]; 
	   次に
		エコー"$ユーザが、ユーザ"ロックされた
		出口
	Fiを
} 
	ユーザー=" $ 1」を
 
#アカウントのロック解除[] < - (ユーザー:文字列 )
unlock_user(){ 
	STAT = $(はpasswd -S "ユーザ$" | awkの'{}印刷$ 2')
	
	IF [[ "$のSTAT" == "LK"]]; 
	   その後
		はpasswd -u "$ユーザー" 
	Fiの

	IF [ [ "$のSTAT" == "PS"]]; 
	   次に、
		エコー"ロック解除ユーザアカウント$" 
		出口
	Fiを
} 

#出口スクリプト[] <( - )
exit_script(){ 
	読み取り-p "スクリプトを終了するかどうか(はい)" TU 
	
	IF [[ "$ TU" == "はい"]]; 
	   次に、
		終了
	Fiを
} 

#メイン関数[] <( - )
メイン(){ 
	#メッセージがnote_message	 
	
	「-p読みください入力操作(1-5): 「SNの
	
	ケース」の$ SN「の
		1)
			を読ん-p」ユーザー名を作成する必要があります入力します。「は、uname 
			読む-pは」アカウントにパスワードを設定してください:「passwdの
			uname CREATE_USER "$のは、uname"の"$ passwdの" 
		;; 
		2) 
			読む-pは、 "ユーザー名を入力してください削除する:"は、uname 
			DELETE_USER "の$のuname" 
		;; 
		3)
			リード-p "ユーザ名、希望のロックを入力する:"は、uname 
			lock_user「の$のuname " 
		;; 
		4)
			"は、uname:ロックを解除したいユーザー名を入力してください読むには-p " 
			unlock_user"の$のuname " 
		;; 
		5)
			のprintf"「N- \スクリプトを終了する
			exit_script 
		;; 
	ESAC 
}		 

#関数が実行される
メイン

  

おすすめ

転載: www.cnblogs.com/Gxiaobai/p/11257282.html