Linux

在 Ubuntu 上編寫登錄腳本

  • December 18, 2018

這個想法是我需要寫使用者名和密碼,腳本告訴我我是誰。

  • if:

使用者名: admin pass: admin 腳本 echo: “you are an admin”

  • if:

username: user pass: user 腳本 echo: “you are a user”

  • 如果:

使用者名:匿名傳遞:匿名腳本回顯:“你是匿名的”

  • 如果

username==“admin” 和 password==“hello” 回顯密碼錯誤

  • 如果

使用者名==“你好”和密碼==“管理員”(例如)回顯使用者名不可用

我希望您不想編寫真正的登錄腳本,而是想玩一點腳本。以下腳本將按照您的要求執行…

#!/usr/bin/env bash

read -p "username: " username
read -p "password: " password

case $username in
   admin|user|anonymous)
       if [[ $password == $username ]]; then
           echo "you are $username"
       else
           echo "wrong password"
       fi
       ;;
   *)
       echo "username not available"
esac

…但它有一些缺陷:

  • 它在使用者鍵入時以明文形式顯示密碼。這通常不是任何人想要的。
  • 在這種情況下,使用者名和密碼必須相同,並且在腳本中也是硬編碼的。這意味著:任何可以執行此腳本的人也可以查看它並查看預期的密碼是什麼。

該腳本提示輸入使用者名和密碼,並將它們儲存在變數$username$password. 然後它檢查 是否 $usernameadminuser或中的一個anonymous。如果是,它檢查$username和是否$password匹配。

引用自:https://unix.stackexchange.com/questions/489741