我想在运行OpenSSL命令时从输出文件中删除回车。
这是我的代码,我收到错误tr无法识别,因为这是UNIX命令。但是如何在Openssl命令链接
中转换为批处理命令openssl enc -aes-256-cbc -K "C:\cat aes_key.txt" -iv "C:\aes_iv.txt" -in plaintext.xml | openssl enc -e -base64 | tr -d '\n' > encrypted.txt
答案 0 :(得分:0)
将此|tr -d '\n' > encrypted.txt
替换为repl.bat命令
|repl "\r" "" xm > encrypted.txt
这假设它是CR而不是CRLF,这是正常的Windows行结束。如果您想替换CRLF,请使用"\r\n"
这使用名为repl.bat
的帮助程序批处理文件 - 从https://www.dropbox.com/s/qidqwztmetbvklt/repl.bat
将repl.bat
放在与批处理文件相同的文件夹中或放在路径上的文件夹中。
答案 1 :(得分:0)
感谢您的支持。我找到了vbscript的解决方案。我在下面写了vbscript并将其保存为vbs文件并传递需要CRLF remvoed的文件名和路径
Const ForReading = 1
Const ForWriting = 2
strFileName = Wscript.Arguments(0)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(strFileName, ForReading)
WScript.Echo "Checking"
strText = objFile.ReadAll
objFile.Close
strNewText = Replace(strText, chr(010), "") ' chr(010) = line feed chr(013) = carriage return
Set objFile = objFSO.OpenTextFile(strFileName, ForWriting)
WScript.Echo strNewText
objFile.WriteLine strNewText
objFile.Close