在 UNIX/Linux 狀態(tài)下,用戶的密碼如果輸入錯(cuò)了只能夠再重新輸入一遍。無(wú)法刪除掉你輸錯(cuò)的字符,因?yàn)?UNIX/Linux 系統(tǒng)的刪除鍵不像 WINDOWS 那么好使。因?yàn)槟惝?dāng)輸入刪除鍵時(shí),它往往表示的是刪除鍵的 ASCII 碼(十進(jìn)制為 8,即:CTRL+H),所以不是特別方便。

創(chuàng)新互聯(lián)專注于網(wǎng)站建設(shè),為客戶提供網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)開發(fā)服務(wù),多年建網(wǎng)站服務(wù)經(jīng)驗(yàn),各類網(wǎng)站都可以開發(fā),品牌網(wǎng)站建設(shè),公司官網(wǎng),公司展示網(wǎng)站,網(wǎng)站設(shè)計(jì),建網(wǎng)站費(fèi)用,建網(wǎng)站多少錢,價(jià)格優(yōu)惠,收費(fèi)合理。
你是不是直接的在終端里面輸入了su
-
user?
如果是的話,問(wèn)題就出在那個(gè)user上面。user在這里是登錄到系統(tǒng)中的具體的用戶的名稱。在實(shí)際使用中,是要依據(jù)具體情況來(lái)輸入的。不是照辦照抄的。
如果登錄的用戶叫u1,那應(yīng)該是su
-
u1,如果登錄的是user1,那應(yīng)該是su
-
user1。不能照抄。除非你哪里那個(gè)用于日常應(yīng)用操作的普通用戶的名稱就是user。
還有,我看到你在user后面還有
passwd。那也是錯(cuò)誤。不過(guò)這個(gè)也怪不得你,因?yàn)槟銢]有在命令行下操作的經(jīng)驗(yàn)。在電腦的語(yǔ)法格式中,以一對(duì)尖括號(hào),或者說(shuō)是以小于號(hào)和大于號(hào)所包裹的部分表示命令中必須輸入的部分,沒有它這條命令無(wú)法執(zhí)行。
說(shuō)明這個(gè)passwd是su
-
user這條指令中必須輸入的部分。passwd實(shí)際上是pass
word的縮寫,就是密碼。
你應(yīng)該這樣:
su
-
user回車
輸入密碼
這個(gè)密碼是什么。不一定。不同的發(fā)行版會(huì)有不同設(shè)置。有些版本的linux,密碼指的是具有超級(jí)管理權(quán)限的root的密碼。有的指的是當(dāng)前登入系統(tǒng)的普通用戶的密碼。你自己去試一下就知道了。
passwd命令說(shuō)明
passwd命令用于設(shè)置用戶的認(rèn)證信息,包括用戶密碼、密碼過(guò)期時(shí)間等。系統(tǒng)管理者則能用它管理系統(tǒng)用戶的密碼。只有管理者可以指定用戶名稱,一般用戶只能變更自己的密碼。
語(yǔ)法 passwd(選項(xiàng))(參數(shù))
選項(xiàng)
-d:刪除密碼,僅有系統(tǒng)管理者才能使用;
-f:強(qiáng)制執(zhí)行;
-k:設(shè)置只有在密碼過(guò)期失效后,方能更新;
-l:鎖住密碼;
-s:列出密碼的相關(guān)信息,僅有系統(tǒng)管理者才能使用;
-u:解開已上鎖的帳號(hào)
參數(shù)
用戶名:需要設(shè)置密碼的用戶名。
與用戶、組賬戶信息相關(guān)的文件
存放用戶信息: /etc/passwd
? ? ? ? ? ? ? ? ? /etc/shadow
存放組信息: ??/etc/group
? ? ? ? ? ? ? ? ? /etc/gshadow
passwd 修改密碼的方法
非系統(tǒng)管理員用戶執(zhí)行passwd只能修改自己的密碼。若新建用戶要為新用戶創(chuàng)建密碼則用如下命令:
passwd用戶名
注意要以root用戶的權(quán)限來(lái)創(chuàng)建。
1. ? 系統(tǒng)管理員創(chuàng)建test用戶并修改 test 用戶密碼
2.??? 切換test用戶并修改 test 用戶密碼
非系統(tǒng)管理員用戶只能使用passwd直接修改密碼,且密碼格式必須要符合規(guī)則,否則不能通過(guò)。
3.??? 鎖定test用戶不能修改密碼
4.??? 清除test用戶密碼
一、使用工具:python、linux
二、方法步驟:有三種方法
1、 最簡(jiǎn)單的方法,但是不安全
raw_input() :
pwd = raw_input('password: ')
print pwd
# password: aaa
# aaa
2、很安全,但是看不到輸入的位數(shù),會(huì)讓人覺得有點(diǎn)不習(xí)慣,不知道的還以為沒有在輸入
getpass.getpass() :
import getpass
pwd = getpass.getpass('password: ')
print pwd
# password:
# aaaa
3、
msvcrt.getch() :
代碼如下:
import msvcrt, sys
def pwd_input():
chars = []
while True:
newChar = msvcrt.getch()
if newChar in '\r\n':
# 如果是換行,則輸入結(jié)束
print ''
break
elif newChar == '\b':
# 如果是退格,則刪除末尾一位
if chars:
del chars[-1]
sys.stdout.write('\b')
# 刪除一個(gè)星號(hào),但是不知道為什么不能執(zhí)行...
else:
chars.append(newChar)
sys.stdout.write('*')
# 顯示為星號(hào)
print ''.join(chars)
pwd = pwd_input()
print pwd
# ******
# aaaaaa
三、注意事項(xiàng):第三種方法解決了第二種方法不能顯示輸入位數(shù)的問(wèn)題,但是如果按退格鍵(backspace)的話,雖然實(shí)際的是退格了,
但控制臺(tái)卻沒有顯示相應(yīng)的退格,比如,當(dāng)前輸入是:abcd,顯示為:****,然后現(xiàn)在打一個(gè)退格鍵,實(shí)際
輸入為:abc,而顯示仍為:****。不知道為什么 sys.stdout.write('\b') 這行沒有執(zhí)行,估計(jì)是和使用msvcrt.getch()有關(guān)系。感興趣的朋友可以進(jìn)一步研究一下。
網(wǎng)頁(yè)題目:linux命令行輸入密碼 linux腳本中密碼的輸入
當(dāng)前地址:http://chinadenli.net/article34/hhjipe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站排名、商城網(wǎng)站、網(wǎng)站維護(hù)、域名注冊(cè)、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)