當前位置:首頁 » 編程軟體 » 腳本輸密碼

腳本輸密碼

發布時間: 2023-05-22 18:20:20

Ⅰ 如何在腳本中執行scp時自動輸入密碼

腳本如下:x0dx0ax0dx0a#!/usr/bin/expect -fx0dx0ax0dx0aset password 密碼x0dx0ax0dx0aspawn scp 用戶名@目標機器ip:拷貝文件的路徑 存放本地文件的路徑 x0dx0aset timeout 300 x0dx0aexpect "用戶名@目標機器ip's password:" #注意:這里的「用戶名@目標機器ip」 跟上面的一致x0dx0aset timeout 300 x0dx0asend "$password\r"x0dx0aset timeout 300 x0dx0asend "exit\r"x0dx0ax0dx0aexpect eofx0dx0ax0dx0a附:scp參數x0dx0a-r:拷貝目錄x0dx0a-c:允許壓縮x0dx0ax0dx0a一個完整的例祥孫子x0dx0ax0dx0a#!/usr/bin/expect -fx0dx0aset password 123456x0dx0a#downloadx0dx0aspawn scp [email protected]:/root/a.wmv /home/yangyz/首握x0dx0aset timeout 300 x0dx0aexpect "[email protected]'s password:"x0dx0aset timeout 300 x0dx0asend "$password\r"x0dx0aset timeout 300 x0dx0asend "exit\者宴慶r"x0dx0aexpect eof x0dx0ax0dx0a#uploadx0dx0aspawn scp /home/yangyz/abc.sql [email protected]:/root/test.sql x0dx0aset timeout 300 x0dx0aexpect "[email protected]'s password:"x0dx0aset timeout 300 x0dx0asend "$password\r"x0dx0aset timeout 300 x0dx0asend "exit\r"x0dx0aexpect eof

Ⅱ 如何在腳本裡面自動輸入密碼

shell腳本在處理自動循環或大的任務方面可節省大量的時間,通過創建一個處理任務的命令清單,使用變數、條件、算術和循環等方法快速創建腳本以完成相應工作,這比在命令行下一個個敲入命令要省時省力得多。
但是有時候我們可能會需要實現和交互程序如ftp,telnet伺服器等進行交互的功能,這時候我們需要用到shell的自動交互功能.
最簡單的例子就是創建用戶,我創建100個用戶,初始密碼為123,那麼要是挨著passwd username ,交互性輸入密碼,那不得瘋掉,但是腳本里應該怎麼寫呢?將密碼123,輸入到passwd命令?
本文收集了較常用交互方法,並進行了比較和總結。
自動交互方法一:利用命令的自帶參數,將標准輸入作為手動輸入的內容
自動交互最關鍵的就是交互信息的自動輸入,首先聯想到文件重定向,在shell編程中有這樣一種用法(參考linux與UNIX SHELL編程指南 chapt 5.7):"command <<delimiter p="" 從標准輸入中讀入,直至遇到delimiter分界符。?
重定向操作符command <<delimiter是一種非常有用的命令,shell將分界符delimiter之後直至下一個同樣的分界符之前的所有內容都作為輸入,遇到下一個分界符, p="" shell就知道輸入結束了。最常見的delimiter分界符是eof,當然完全可以自定為其他字元。
對於需求1 要求的自動登陸ftp,並作系列操作,則可以用這種方法進行自動交互。代碼如下:
[yjwan@test ~]$ ftp -i -n 192.168.21.46 <
user dbftp dbftp101
ls
EOF
下面是得到的結果:
Connected to 192.168.21.46.
220 developerjail FTP server (Version 6.00LS) ready.
331 Password required for dbftp.
230 User dbftp logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
229 Entering Extended Passive Mode (|||54281|)
150 Opening ASCII mode data connection for '/bin/ls'.
total 8847424
-rw-r--r-- 1 dbftp www 9055318991 Aug 28 14:28 ewiz90.sql_2010-08-29
226 Transfer complete.
221 Goodbye.
測試可以發現,如上代碼使用帳號名dbftp,密碼dbftp101成功登陸了ftp伺服器,並進入目錄,ls出當前目錄的文件。
注意事項:
1 這里一定要加-i ,否則必定失敗!!
這里ftp用的-I 參數 結束了互動式輸入,因此可以用文本的方式自動地輸入用戶密碼以及操作方式
如果不用-I 參數,那麼必定要求你手動輸入密碼的!!那麼就達不到自動登陸的要求了
你可以man ftp找到這個參數
-i 關閉多文件傳送中的互動式提示。請參考 prompt、mget、mput 和 mdelete 子命令,以取得多文件傳送中的提示的描述。
-n 防止在起始連接中的自動登錄。否則, ftp 命令會搜索 $HOME/.netrc 登錄項,該登錄項描述了遠程主機的登錄和初始化過程。請參考 user 子命令。
2 舉一反三:只要是要求輸入密碼的命令,一般都帶有一個參數,允許你從標准輸入,輸入用戶密碼,以及操作。
其他常用的自動登陸命令的參數
1) Passwd命令
Linux下 Passwd有參數
--stdin
This option is used to indicate that passwd should read the new password from standard input, which can be a pipe.
所以linux下自動改變用戶密碼的辦法就是
Echo 密碼 |passwd –stdin 用戶名
Freebsd沒有以上參數 注意
他的方法是echo passwd |pw mod user username -h 0
2)smbpasswd
-s
This option causes smbpasswd to be silent (i.e. not issue prompts)
and to read its old and new passwords from standard input, rather
than from /dev/tty (like the passwd(1) program does). This option
is to aid people writing scripts to drive smbpasswd
3)sudo
在shell腳本中需要用root用的來執行指令:
sudo 自動輸入密碼
echo "password" | sudo -S netstat -tlnp
-S
The -S (stdin) option causes sudo to read the password from the standard input instead of the terminal device.
3 標准輸入還可以用以下兩種寫法:
可以將下面的內容寫入到一個文本
然後ftp -I –n ip <文本
或者echo 「..」 |ftp –I –n ip
都是可以的!
因為他們都滿足「有一個標準的輸入」這個條件
4 ssh的自動登陸沒有這樣的自動輸入密碼的參數
一般都是使用公鑰/私鑰的方式自動登錄
這種文章滿街都是,網上google一下ssh自動登陸就可以找到答案。
或者用下面的辦法。
自動交互方法2:利用expect腳本自動登陸
這個 expect基本屬於一種編程了
基本任何需要互動式登陸的場合,他都可以解決,是相當的牛逼。
只要是第一種辦法解決不了的,基本都可以用這種辦法。

Ⅲ 我打開一個文件夾,,彈出了個窗口:"腳本提示,,請輸入密碼".請問這是怎麼回事

給Windows 9x/2000文件夾加密。通過給一個文件夾加密就可使該文件夾里的所有文件得到保護。其工作效果,就是在您雙擊進入該文件夾時系統提示您輸入密碼,正確則進入,錯誤則自動退回到硬碟根目錄下——非常好用!

1、進入您要進行加密保護的文件夾中,在空白處單擊滑鼠右鍵,選擇「自定義文件夾…」選項;

2、單擊「下一步」選擇「自定義」並在副選框中選擇「選擇或編輯該文件夾的Html模板」,單擊「下一步」

3、在選擇模板類型中選沖歲侍擇「標准」,並將「編輯該模板」選項選中,單擊「下一步」
4、在彈出的「Folder」文件中找到〈script language="javaScript"〉,在其下方頂頭輸入以下內容:

var pass = prompt("請輸入密碼")

該處的「請輸入密碼」為系統提示語

if(pass != "123")

「123」處換成您自己設定的密碼

{window.location="c:"}

5、保存「Folder」文件之後,選擇完成,文件夾加密就完成了,您可以進行測試啦

因為剛才的諸多步驟就是Windows的腳本編程,所以經驗證,該方法適用於所有Windows系統。如果需要去掉保護,只需要把「Folder」文件修改回原樣就好啦!

我常用上面這種方法
還有下面幾種方法(我不常用)

NTFS格式下加、解密問題

NTFS是WinNT以上版本支持的一種提供安全性、可靠性的高級文件系統。在Win2000和WinXP中,NTFS還可以提供諸如文件和文件夾許可權、加密、磁碟配額和壓縮這樣的高級功能。

一、加密文件或文件夾
步驟一:打開Windows資源管理器。
步驟二:右鍵單擊要加密的文件或文件夾,然後單擊「屬性」。
步驟三:在「常規」選項卡上,單擊「高級」。選中「加密內容以便保護數據」復選框

在加密過程中還要注意以下五點:
1.要打開「Windows 資源管理器」,請單擊「開始→程序→附件」,然後單擊「Windows 資源管理器」。
2.只可以加密NTFS分區卷上的文件和文件夾,FAT分區卷上的文件和文件夾無效。
3.被壓縮的文件或文件夾也可以加密。如果要加密一個壓縮文件或文件夾,則該文件或文件夾將會被解壓
4.無法加密標記為「系統」屬性的文件,並且位於systemroot目錄結構中的文件也無法加密。
5.在加密文件夾時,系統將詢問是否要同時加密它的子文件夾。如果選擇是,那它的子文件夾也會被加密,以後所有添加進文件夾中的文件和子文件夾都將在添加時自動加密。

二、解密文件或文件夾
步驟一:打開Windows資源管理器。
步驟二:右鍵單擊加密文件或文件夾,然後單擊「屬性」。
步驟三:在「常規」選項卡上,單擊「高級」。
步驟四:清除「加密內容以便保護數據」復選框。

同樣,我們在使用解散吵密過程中要注意以下問題:
1.要打開「Windows資源管理雀滲器」,請單擊「開始→程序→附件」,然後單擊「Windows資源管理器」。
2.在對文件夾解密時,系統將詢問是否要同時將文件夾內的所有文件和子文件夾解密。如果選擇僅解密文件夾,則在要解密文件夾中的加密文件和子文件夾仍保持加密。但是,在已解密文件夾內創立的新文件和文件夾將不會被自動加密。

以上就是使用文件加、解密的方法!而在使用過程中我們也許會遇到以下一些問題,在此作以下說明:
1.高級按鈕不能用
原因:加密文件系統(EFS)只能處理NTFS文件系統卷上的文件和文件夾。如果試圖加密的文件或文件夾在FAT或FAT32卷上,則高級按鈕不會出現在該文件或文件夾的屬性中。
解決方案:
將卷轉換成帶轉換實用程序的NTFS卷。
打開命令提示符。
鍵入:Convert [drive]/fs:ntfs
(drive 是目標驅動器的驅動器號)
2.當打開加密文件時,顯示「拒絕訪問」消息
原因:加密文件系統(EFS)使用公鑰證書對文件加密,與該證書相關的私鑰在本計算機上不可用。
解決方案:
查找合適的證書的私鑰,並使用證書管理單元將私鑰導入計算機並在本機上使用。
3.用戶基於NTFS對文件加密,重裝系統後加密文件無法被訪問的問題的解決方案(注意:重裝Win2000/XP前一定要備份加密用戶的證書):
步驟一:以加密用戶登錄計算機。
步驟二:單擊「開始→運行」,鍵入「mmc」,然後單擊「確定」。
步驟三:在「控制台」菜單上,單擊「添加/刪除管理單元」,然後單擊「添加」。
步驟四:在「單獨管理單元」下,單擊「證書」,然後單擊「添加」。
步驟五:單擊「我的用戶賬戶」,然後單擊「完成」(如圖2,如果你加密用戶不是管理員就不會出現這個窗口,直接到下一步) 。
步驟六:單擊「關閉」,然後單擊「確定」。
步驟七:雙擊「證書——當前用戶」,雙擊「個人」,然後雙擊「證書」。
步驟八:單擊「預期目的」欄中顯示「加密文件」字樣的證書。
步驟九:右鍵單擊該證書,指向「所有任務」,然後單擊「導出」。
步驟十:按照證書導出向導的指示將證書及相關的私鑰以PFX文件格式導出(注意:推薦使用「導出私鑰」方式導出,這樣可以保證證書受密碼保護,以防別人盜用。另外,證書只能保存到你有讀寫許可權的目錄下)。
4.保存好證書
注意將PFX文件保存好。以後重裝系統之後無論在哪個用戶下只要雙擊這個證書文件,導入這個私人證書就可以訪問NTFS系統下由該證書的原用戶加密的文件夾(注意:使用備份恢復功能備份的NTFS分區上的加密文件夾是不能恢復到非NTFS分區的)。

最後要提一下,這個證書還可以實現下述用途:
(1)給予不同用戶訪問加密文件夾的許可權
將我的證書按「導出私鑰」方式導出,將該證書發給需要訪問這個文件夾的本機其他用戶。然後由他登錄,導入該證書,實現對這個文件夾的訪問。
(2)在其也WinXP機器上對用「備份恢復」程序備份的以前的加密文件夾的恢復訪問許可權
將加密文件夾用「備份恢復」程序備份,然後把生成的Backup.bkf連同這個證書拷貝到另外一台WinXP機器上,用「備份恢復」程序將它恢復出來(注意:只能恢復到NTFS分區)。然後導入證書,即可訪問恢復出來的文件了。

Win98加密文件夾四法

一、文件夾屬性法

在「Windows資源管理器」窗口,右鍵單擊要加密的文件夾,單擊「屬性」,選中「隱藏」復選框。在注冊表的「HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\Advanced\Folder\Hidden\SHOWALL」分支下,將「Checkedvalue」的鍵值設置為數字「0」。以後,即使在「Windows資源管理器」窗口,單擊「查看」菜單中的「文件夾選項」,單擊「查看」選項卡,選中「顯示所有文件」復選鈕,也無法看到具有隱藏屬性的文件夾。

二、「回收站」法

首先確認選中了「顯示所有文件」復選鈕,並且注冊表中「Checkedvalue」的鍵值為「1」。然後,在「Windows資源管理器」窗口,右鍵單擊「C:\RECYCLED」文件夾(這是C盤上「回收站」對應的文件夾),再單擊「屬性」,單擊「常規」選項卡,清除「啟用縮略圖方式查看」和「只讀」復選框,單擊「確定」按鈕。關閉並重新啟動「Windows資源管理器」後,將會看到「C:\RECYCLED」文件夾中有一個desktop.ini文件。把該文件復制到要加密的文件夾中,並把該文件夾設為「只讀」屬性。

三、「文件管理器」法

單擊「開始/運行」,鍵入「winfile」,單擊「確定」按鈕,打開「文件管理器」窗口,單擊「查看」菜單中的「按文件類型」,選中「顯示隱藏/系統文件」復選框,單擊「確定」按鈕。把要加密的文件夾拖到「C:\RECYCLED」文件夾或者其他分區的「RECYCLED」文件夾。這樣,在「我的電腦」或「Windows資源管理器」窗口中就看不到這個文件夾了。

四、設置密碼

1、打開「資源管理器」,選定要加密或要保護的文件夾(文件目錄),在其中空白處單擊滑鼠右鍵,選擇「自定義文件夾…」選項;
2、在「自定義文件夾」的復選框中,選擇「創建或編輯HTML文檔」,並單擊「下一步」,系統准備啟動HTML編輯器;
3、單擊「下一步」,系統啟動HTML編輯器,自動打開Folder.htt文檔;
4、編輯Folder.htt文檔,搜索「javascript」字元,在下方頂頭輸入以下3行內容:

var pass = prompt("請輸入密碼")

if(pass != "ABC")

{window.location="E:"};

5、保存Folder.htt文檔並退出編輯,選擇「完成」;到此,對文件夾的加密或保護便已完成;
6、加密測試,關閉已打開的所有文檔及文件夾,重新打開「資源管理器」,點擊已加密的文件夾,系統便會提示輸入密碼,輸入正確的密碼(本文設定的密碼為ABC)就可以訪問該文件夾,反之則會轉入E盤而無法訪問,從而保護該文件夾及其中的文檔。

Ⅳ linux shell腳本,運行時要輸入密碼,密碼正確才往下跑,這個怎麼實現呢

A=123456
read-p"請輸入密碼:"PASSWD
if["$PASSWD"=="$A"];then
continue
else
echo"密碼不錯誤,請重啟輸入!"
fi

Ⅳ 如何在Shell腳本輸入密碼

這問題太廣泛了。想到其中一種可能,下面答案來自

Linux命令大全 網站

終端輸入密碼時候,不讓密碼顯示出來的例子。

方法1:

#!/bin/bash
read-p"輸入密碼:"-spwdecho
echopasswordread,is"$pwd"

方法2:

#!/bin/bash
stty-echo
read-p"輸入密碼:"pwd
sttyecho
echo
echo輸入完畢。

Ⅵ 如何在腳本中執行scp時自動輸入密碼

用Perl或者其他腳本的時候,都會遇到需要輸入密碼的問題,導致腳本會被中斷。

如何才能不被中斷,SCP可以自動輸入密碼呢,腳本順利執行呢?我用了一個sshpass工具。

1.下載地址:

http://sourceforge.net/projects/sshpass/

2.安裝:

./configure

make

make install

3.為了能在任意地方執行命令 cp sshpass
/usr/bin/

4.執行的命令如下:
sshpass -p
$PASSWD scp -o StrictHostKeyChecking=no $CMD

Ⅶ 如何svn腳本命令check out自動輸入密碼

svn腳本命令check out自動輸入密碼:
需要把svn checkout/export寫入一個腳本中,執行
但是訪問失敗,需要授權
svn: PROPFIND request failed on 「XXXXXXX」
svn: PROPFIND of 'XXXXX': 403 Forbidden

改用python通過urllib訪問讀取也不行
拿到的html代碼是輸入用戶名和密碼頁面的html
1.因為面向的使用者不是同一個,有些人可能沒有許可權
如何拿到用戶名和密碼,密碼只能每次輸入么?有沒有svn自動保存在某地
2.有什麼方法可以搞定?check out附帶用戶名或密碼
thx

|

svn login會將密碼保存到相應的文件,以後svn co就不需要再輸入密碼了

如果要以其他ID去checkout,可以使用(svn co --help查看幫助):
svn co --username XXX http://ip/....
使用這個命令後,上面的svn login信息文件會被修改成新的ID/passwd
|添加選項
-user u -password p
另外,svn貌似也會自動保存密碼的

Ⅷ SHELL腳本切換用戶需輸入密碼

正常情況下,使用su - username的方式,普通用戶切換都需要輸入密碼的,只有root su的時候才不需要

Ⅸ linux 腳本執行命令為什麼需要輸入密碼

因為有環境變數PATH,禪絕裡麵包含了許多目錄,這些目錄下的可執行文件就無需輸入完整路徑來執行。 你可以用 echo "$PATH"查看當前的環境變數包含的目錄,自帶的命令文件都是在PATH 中的,所以可以直接使用清衡。 ./代表當前目錄,由於自己編寫的賀正姿腳本就...

Ⅹ 安卓設備中在執行bat腳本時abd shell自動輸入密碼並執行命令怎麼寫

可以使用 echo 命令和管道符 | 將密碼輸入到 adb shell 的命令中。假設你的密碼為 mypassword,需要執行的命令為 mycommand,那麼彎彎虧可以這樣寫:
echo mypassword | adb shell mycomman
在上面的命令中,echo mypassword 將密碼輸出到標准輸出流,然後通過管道符 | 將標准輸出流連接到 adb shell mycommand 命令的標准輸入流中,這樣就實現了自動輸入密碼並執行命令埋神的效鬧談果。

熱點內容
nba2k17文件夾 發布:2025-07-18 11:48:53 瀏覽:867
朔源碼是什麼 發布:2025-07-18 11:44:33 瀏覽:773
迷你世界解壓劇場 發布:2025-07-18 11:43:48 瀏覽:153
linux安裝opencv 發布:2025-07-18 11:42:10 瀏覽:445
編程游戲的軟體有哪些 發布:2025-07-18 11:41:34 瀏覽:955
c程序設計語言電子書 發布:2025-07-18 11:35:58 瀏覽:641
lightning耳機如何在安卓手機上用 發布:2025-07-18 11:21:47 瀏覽:174
妄想山海新宿怎麼配置好 發布:2025-07-18 11:07:43 瀏覽:615
androidsaxxml解析xml 發布:2025-07-18 10:57:58 瀏覽:386
ios透明文件夾插件 發布:2025-07-18 10:51:36 瀏覽:842