如何使用 GPG 指定密钥服务器?

Kor*_*era 6 encryption linux-mint gpg

在线教程说要使用该选项--keyserver,如下所示:

gpg --send-keys <keyID> --keyserver 'hkp://keyserver.ubuntu.com:11371'
Run Code Online (Sandbox Code Playgroud)

但gpg不识别该选项--keyserver。我究竟做错了什么?

Mic*_*zek 8

GPG 的命令行解析有点奇怪:

gpg [--homedir dir] [--options file] [options] command [args]
Run Code Online (Sandbox Code Playgroud)

正确的顺序是选项,然后是命令,然后是命令的参数,所以你应该这样做:

gpg --keyserver 'hkp://keyserver.ubuntu.com:11371' --send-keys <keyID>
Run Code Online (Sandbox Code Playgroud)

看起来 GPG 会让你把命令放在选项之前,所以你也可以这样做:

gpg --send-keys --keyserver 'hkp://keyserver.ubuntu.com:11371' <keyID>
Run Code Online (Sandbox Code Playgroud)

但命令的参数(在本例中为<keyID>)必须放在最后。从手册页:

请记住,一旦遇到非选项,选项和命令解析就会停止,