Mutt 客户端无法使用解密的密码登录邮件服务器

Mutt 客户端无法使用解密的密码登录邮件服务器

最近将我的邮件登录密码更改为密码。

.muttrc设置为gpg调用解密包含密码的文件,然后将awk内容放入临时文件并将其传递给mutt(然后删除解密的 tmp 文件)。
该方法只需一个密码即可完美运行。将密码更改为空格分隔的短语后,mutt现在停止在该短语的第二个单词处,并显示错误消息:

Error in ~/.muttrc, line 2: Word2: unknown variable

在哪里字2是实际密码的第二个单词

.muttrc是:

set my_tmpsecret=`gpg -o ~/.crypt/.tmp -d ~/.crypt/.passwd.gpg`
set my_gpass=`awk '{print $1,$2,$3,$4}' ~/.crypt/.tmp`
set my_del=`rm -f ~/.crypt/.tmp`

set imap_user="[email protected]"
set imap_pass=$my_gpass
set folder="imaps://[email protected]:993/"
set spoolfile="+INBOX"
set postponed="+[Gmail]/Drafts"
set record="+[Gmail]/Sent Mail"
set trash ="+[Gmail]/Trash"
mailboxes       = +INBOX 

set smtp_url = "smtp://[email protected]:587"  
set smtp_pass=$my_gpass
set record=""
set from="[email protected]"
set realname="Some Body"

set smart_wrap = yes
set sort = 'threads'
set sort_aux = 'last-date-received'
set imap_check_subscribed

#ignore "Authentication-Results:"
ignore "DomainKey-Signature:"
ignore "DKIM-Signature:"
hdr_order Date From To Cc

set date_format="%y-%m-%d %T"
set index_format="%2C | %Z [%d] %-30.30F (%-4.4c) %s"
set editor='vim + -c "set textwidth=72" -c "set wrap" -c "set nocp" -c "?^$"'
set header_cache = ~/.cache/mutt

#set message_cachedir = "~/.cache/mutt"
unset imap_passive
set imap_keepalive = 300
set mail_check = 120

相同的 if$1,$2,...,$n替换为$0

谢谢

答案1

.muttrc文件不是 shell 脚本,而是一个配置文件,允许您设置 Mutt 知道的特定变量。

Mutt 没有名为 的配置变量passwd,因此当您尝试设置它时它会抱怨。不过,前缀为 的变量my_是可以的。

不要使用临时变量(这不起作用),而是imap_pass直接设置该值。


更新问题后:

您的问题源于您的密码是多个空格分隔的单词。

在 Mutt 配置中你不能有

set my_variable=some words

没有正确的引用,

set my_variable="some words"

这意味着您的问题将通过

set my_gpass="`awk '{print $1,$2,$3,$4}' ~/.crypt/.tmp`"

相关内容