如何将文件传输到加密的受密码保护的zip文件中,然后在Windows批处理中删除原始文件?

时间:2017-01-26 20:48:03

标签: windows batch-file encryption 7zip bcp

我正在尝试使用BCP Utility导出一些数据库数据。

到目前为止,这是我的批处理命令:

BCP [table] out [file] -c -T -S [server] -t"¶" | 7z.exe a -si [archive name] -sdel

BCP部分工作正常:

BCP [table] out [file] -c -T -S [server] -t"¶"

然而,对于7-Zip部分:

7z.exe a -si [archive name] -sdel

它起到了作用。原始文件未被删除,我还想用128位或256位加密密码加密存档。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

我找到了一个带有小型VB .NET脚本的解决方案。

脚本接受表名,将BCP运行到文本文件中,运行带有加密选项(https://sevenzip.osdn.jp/chm/cmdline/switches/method.htm#Zip)的7 Zip和密码,然后删除原始文本文件。 这些命令使用Process()对象函数运行。

这样我就可以轻松遍历我需要放在文件中的表格。

这不是我正在寻找的Windows批量答案,但它确实有效。

仍欢迎任何其他建议。

谢谢!

答案 1 :(得分:1)

BCP .... | 7z u -sidirData -pMyPassword -mhe outputFile.7z
              ^ ^          ^            ^    ^______________ The file that will be generated
              | |          |            |___________________ Encrypt file names
              | |          |________________________________ Password used for encryption
              | |___________________________________________ Name of stored file
              |_____________________________________________ update/create container file

请注意,开关和值之间没有空格