该脚本的目的是读取加密的文件“ .pass”并使用PublicKey解密该文件,并应保存解密的输出
puts $output
应显示解密的密码。
PublicKey会根据我的密钥生成逻辑每次更改,因此我希望将其设置为变量
#!/usr/bin/expect
set value "PublicKey"
set output [ exec sh -c {cat .pass | cut -d'&' -f1 | openssl base64 -d | openssl enc -d -rc2 -k "$value" } ]
puts $output
答案 0 :(得分:0)
文件中有typographic quotation marks-您只需要对quote strings使用'
和"
(直引号)即可。
答案 1 :(得分:0)
Tcl {大括号}就像shell的“单引号”一样-在其中不执行变量扩展。
您需要使用其他引号:
set value "PublicKey"
set cmd "cat .pass | cut -d'&' -f1 | openssl base64 -d | openssl enc -d -rc2 -k $value"
set output [ exec sh -c $cmd ]
puts $output