(一)列印一個菜單,接受一個輸入,如果沒有這個使用者就建立使用者和密碼,将建立的使用者和密碼寫入到一個檔案,如果檔案中有就模拟一個使用者登入,要求使用者名任意,可以是(^$ ^q ),密碼分兩種可以是空密碼,也可以是任意長度的密碼。
<code>shell代碼如下:</code>
<code>#!/bin/bash</code>
<code>create_user(){</code>
<code> </code><code>read</code> <code>-p </code><code>"Plz Input Name:"</code> <code>name</code>
<code> </code><code>cat</code> <code>file</code> <code>| </code><code>grep</code> <code>$name &></code><code>/dev/null</code>
<code> </code><code>[ $? -</code><code>eq</code> <code>0 ] && </code><code>echo</code> <code>"The user is exise"</code> <code>&& </code><code>exit</code> <code>0</code>
<code> </code><code>if</code> <code>[ -z $name ];</code><code>then</code>
<code> </code><code>echo</code> <code>"no exise"</code> <code>&& </code><code>exit</code> <code>0</code>
<code> </code><code>fi</code>
<code> </code><code>read</code> <code>-p </code><code>"Plz Input Passwd:"</code> <code>passwd</code>
<code> </code><code>read</code> <code>-p </code><code>"Plz Input Passwd Again:"</code> <code>passwd1</code>
<code> </code><code>if</code> <code>[[ </code><code>"$passwd"</code> <code>!= </code><code>"$passwd1"</code> <code>]] ;</code><code>then</code>
<code> </code><code>echo</code> <code>"passwd not right"</code> <code>&& </code><code>exit</code> <code>0</code>
<code> </code><code>if</code> <code>[ ! -z </code><code>"$passwd"</code> <code>];</code><code>then</code>
<code> </code><code>echo</code> <code>"$name "</code><code>$</code><code>passwd</code><code>" "</code> <code>>></code><code>file</code>
<code> </code><code>echo</code> <code>"successfully!"</code>
<code> </code><code>if</code> <code>[ -z </code><code>"$passwd"</code> <code>];</code><code>then</code>
<code> </code><code>echo</code> <code>"$name "</code> <code>" "</code> <code>>></code><code>file</code>
<code>}</code>
<code>login(){</code>
<code> </code><code>read</code> <code>-p </code><code>"Plz Input name:"</code> <code>name</code>
<code> </code><code>a=</code><code>"`cat file | awk '$1=="</code><code>'$name</code><code>'"'</code><code>|</code><code>cut</code> <code>-d </code><code>' '</code> <code>-f2-`"</code>
<code> </code><code>b=`</code><code>echo</code> <code>"$a"</code> <code>| </code><code>sed</code> <code>'s/ //g'</code><code>`</code>
<code> </code><code>cat</code> <code>file</code> <code>| </code><code>awk</code> <code>'$1=="'</code><code>$name</code><code>'"'</code> <code>&> </code><code>/dev/null</code>
<code> </code><code>if</code> <code>[ $? -</code><code>eq</code> <code>0 ];</code><code>then</code>
<code> </code><code>read</code> <code>-p </code><code>"Plz Input your passwd:"</code> <code>passwd</code>
<code> </code><code>c=`</code><code>echo</code> <code>$</code><code>passwd</code> <code>| </code><code>sed</code> <code>'s/ //g'</code><code>`</code>
<code> </code><code>if</code> <code>[[ </code><code>"$b"</code> <code>= </code><code>"$c"</code> <code>]];</code><code>then</code>
<code> </code><code>echo</code> <code>"successfully!"</code>
<code> </code><code>else</code>
<code> </code><code>echo</code> <code>error</code>
<code> </code><code>fi</code>
<code> </code><code>else</code>
<code> </code><code>echo</code> <code>"not user;plz to creiate"</code>
<code>haha(){</code>
<code>case</code> <code>$cc </code><code>in</code>
<code> </code><code>1)</code>
<code> </code><code>create_user</code>
<code> </code><code>;;</code>
<code> </code><code>2)</code>
<code> </code><code>login</code>
<code> </code><code>3)</code>
<code> </code><code>exit</code> <code>0</code>
<code> </code><code>*)</code>
<code> </code><code>exit</code> <code>1</code>
<code>esac</code>
<code>cat</code> <code><< EOF</code>
<code>=========please choice=========</code>
<code> </code><code>1) create_user</code>
<code> </code><code>2) login</code>
<code> </code><code>3) </code><code>exit</code>
<code>EOF</code>
<code>read</code> <code>-p </code><code>"Choice:"</code> <code>cc</code>
<code>haha</code>
這個腳本雖然很簡單,但是我也根據不同的情況調試了好久.
本文轉自 大雪兒 51CTO部落格,原文連結:http://blog.51cto.com/dingxue/1970428,如需轉載請自行聯系原作者