Vb.net 在写入.bat文件的日志时删除特定字符串

Vb.net 在写入.bat文件的日志时删除特定字符串,vb.net,batch-file,Vb.net,Batch File,我正在创建一个.bat文件,以便将文件从一台服务器传输到另一台服务器。移动文件后,我删除了原始的.bat文件。除此之外,我正在编写日志.bat文件 代码工作正常,但问题在于结果密码存储在日志文件中,我无法从原始.bat文件中删除相同的密码,因为这将用于传输到给定的凭据 我可以从日志文件中删除相同的内容吗? 下面是我的代码: Shell("filters.bat >log.txt") 这里有一种方法可以替换文本文件(文件名)中的文本(密码为“***”)。它未经测试,但应该很接近 s = s

我正在创建一个
.bat
文件,以便将文件从一台服务器传输到另一台服务器。移动文件后,我删除了原始的
.bat
文件。除此之外,我正在编写日志
.bat
文件

代码工作正常,但问题在于结果密码存储在日志文件中,我无法从原始.bat文件中删除相同的密码,因为这将用于传输到给定的凭据

我可以从日志文件中删除相同的内容吗? 下面是我的代码:

Shell("filters.bat >log.txt")

这里有一种方法可以替换文本文件(文件名)中的文本(密码为“***”)。它未经测试,但应该很接近

s = system.io.file.readalltext(filename)
s = s.replace(password, "****")
system.io.file.writealltext(filename, s)
要在写入文件时替换它,只需在正在写入的任何字符串上使用字符串replace:

s = system.io.file.readalltext(batchoutput)
s = s.replace(password, "****")
system.io.file.appendalltext(logfilename, s)

在输入密码之前,通过批量文件创建中的echo离线解决了该问题

我不明白为什么您关心日志文件中的密码,但却不关心日志文件中嵌入的密码。这只猫已经出笼了。你应该重新评估你的整个方法。我之前的评论中有一个输入错误。我的意思是说“……但是你没有关心批处理文件中的密码。”再加上@dbenham所说的,永远不要用纯文本将密码写入磁盘。即使是在很短的时间内。根据使用的磁盘/文件系统的类型,以后替换文件内容可能不会覆盖原始内容,这意味着密码很容易恢复。即使它确实覆盖了相同的扇区,也有十几种方法可以在您有时间覆盖密码之前拦截密码。您好。。谢谢你的反馈。基本上,I.T.团队将使用日志文件,而密码属于使用.exe的用户。修改日志文件将是替代解决方案,但不是第一个。这是因为我们可以在修改文件之前轻松地跟踪它