.net 4.0 如何在DOS命令/C#(GPG)中模拟按键输入

.net 4.0 如何在DOS命令/C#(GPG)中模拟按键输入,.net-4.0,batch-file,process,gnupg,.net 4.0,Batch File,Process,Gnupg,我在C#中以DOS命令的形式执行GPG。大多数人工作。 我设法从标准输入读取密码(类似于书面输入) 但我一直坚持执行键删除您需要的是执行以下命令: gpg --delete-key "Key Name" 但问题是GPG会询问您是否确定要删除此密钥以及您需要删除的内容 需要的是按Y我无法存档的内容… 似乎不是从StdIO那里读到的 我试过类似DOS的解决方案 echo Y | gpg --delete-key "Key Name" 或者将Y作为第一行,并将作为第二行,生成txt文件 type

我在C#中以DOS命令的形式执行GPG。大多数人工作。 我设法从标准输入读取密码(类似于书面输入)

但我一直坚持执行键删除您需要的是执行以下命令:

gpg --delete-key "Key Name"
但问题是GPG会询问您是否确定要删除此密钥以及您需要删除的内容
需要的是按Y我无法存档的内容…
似乎不是从StdIO那里读到的

我试过类似DOS的解决方案

echo Y | gpg --delete-key "Key Name"
或者将Y作为第一行,并将作为第二行,生成txt文件

type yes.txt | gpg --delete-key "Key Name"
两者都不起作用

你知道如何让它工作吗?

试着把
--yes
作为参数传递

从:

——删除键名

从公钥环中取出密钥。在批处理模式下,需要
--yes
,或者必须通过指纹指定密钥。这是防止意外删除多个密钥的保护措施


听起来不错,但对我不起作用。我试过gpg——删除键“abc”——是的。这对你有用吗?好的,我发现了:应该按照如下步骤进行:gpg--批处理--是--删除“abc”键。感谢
--批处理
使用批处理模式。从不询问,不允许交互命令<代码>--是
在大多数问题上假设“是”。