带括号和管道的多行Windows shell命令
我试图在Windows上用OpenSSL加密一些表单数据,但我很难弄清楚正确的语法是什么。使用以下命令,OpenSSL返回一条PKCS7消息,但仍然给我一条带括号和管道的多行Windows shell命令,windows,batch-file,cmd,command-prompt,Windows,Batch File,Cmd,Command Prompt,我试图在Windows上用OpenSSL加密一些表单数据,但我很难弄清楚正确的语法是什么。使用以下命令,OpenSSL返回一条PKCS7消息,但仍然给我一条&此时是意外的消息 (openssl smime -sign -signer client-public.pem -inkey client-private.pem -outform der -nodetach -binary^ formkey1=formvalue1^ formkey2=formvalue2^ formkey3=for
&此时是意外的消息
(openssl smime -sign -signer client-public.pem -inkey client-private.pem -outform der -nodetach -binary^
formkey1=formvalue1^
formkey2=formvalue2^
formkey3=formvalue3^
^
^
) | openssl smime -encrypt -des3 -binary -outform pem server-public.pem
我觉得我的管道在那里引起了一些问题,但我不知道该怎么做才能得到一个干净、无错误的结果。没有必要将其拆分为多行。
因此,您应该首先测试它是否在一条线上工作
然后可以使用多行插入符号,但别忘了在下一行中添加空格,否则它会将整个文本粘贴在一起,而不带任何分隔符。
右括号前面的插入符号将失败,因为多行插入符号将转义下一行的第一个字符,所以右括号不会关闭任何内容
这应该行得通
(openssl smime -sign -signer client-public.pem -inkey client-private.pem -outform der -nodetach -binary^
formkey1=formvalue1^
formkey2=formvalue2^
formkey3=formvalue3^
^
^
) | openssl smime -encrypt -des3 -binary -outform pem server-public.pem
这不是完整的脚本,是吗?请把完整的剧本贴出来好吗?这是完整的剧本。OpenSSL可执行文件在我的路径中。谢谢。我错过了下一行的空格。