Linux shell腳本

Linux shell腳本

我正在運行一個實用程式腳本,如下所示

./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

相關內容