我正在運行一個實用程式腳本,如下所示
./myscript -d myhomedir
這會拋出如下輸出資訊:在上述主目錄中建立文件
輸入密碼:
我希望這個密碼是我以 base64 格式編碼的檔案的輸入,這是我的腳本
passwd=`cat ${myhomedir}/.passwd`
deCrypt=`openssl enc -base64 -d <<< $passwd`
echo $deCrypt
./myscript -d myhomedir
expect "Enter Password:"
send -- "$deCrypt"
這不起作用。如果有一種方法可以從文件中讀取密碼並將其作為輸入,請有人指導我嗎?無需輸入。
答案1
#!/usr/bin/expect -f
spawn -noecho ./myscript -d myhomedir
expect -re "Enter Password" { send -- [exec cat ~/.passwd | openssl enc -base64 -d ]\r }
interact
puts "\nDone.\n"
exit