从java运行时运行linux命令

wvmv3b1j  于 2021-07-09  发布在  Java
关注(0)|答案(1)|浏览(341)

这个问题在这里已经有答案了

java runtime.getruntime().exec&通配符(5个答案)
linux上的java runtime.exec()参数(1个答案)
三年前关门了。
有人能帮助我如何使用runtime.getruntime().exec()从java程序运行gpg加密命令吗?
我希望运行的示例命令如下所示:
gpg-u'receipent'-r keyid--armor--output/home/myuser/tmp/check.pgp--sign--passphrase'&sw@217'--batch--encrypt/home/myuser/tmp/check.txt*
当我试图从java程序执行这个命令时,会出现类似“用法:gpg[options][filename]”的错误
请帮助解决此错误,并从java程序运行上述gpg命令。

a64a0gku

a64a0gku1#

如果 gpg 二进制文件已正确安装在主机上。

Process p = new ProcessBuilder("gpg -u 'receipient' -r KeyID --armor --output /home/myuser/tmp/check.pgp --sign --passphrase '&sw@217' --batch --encrypt /home/myuser/tmp/check.txt*".split(" "))
.inheritIO()
.start();

p.waitFor();

我没有正确的设置,但此代码按预期运行。您可以在这里尝试:https://tech.io/snippet/vzjtme0

相关问题