0

简短版:我知道没有一种简单的方法可以做到这一点,但是如何使用 VB 更改命令文件中的行?

Long:在登录脚本中工作,该脚本将(最终)根据特定用户的用户名填充 RDP 文件(IE:user@blahdeblah.com 转到完整地址:s:blahdeblah.blahdeblah.com 等等)。地址的一部分中的多个服务器位置。我已经完成了提取文件、捕获用户名和它们应该去哪里的简单部分,但我缺乏关于如何填充文件的知识。我在这里看到了一些关于阅读文本然后更改出现在列中的单词的帖子,但是相同的做法是否可以在行中起作用?

如果 RDP 中的整个文本文件是 47 行,我可以说“用_替换第 45 行”吗?

我知道阅读起来很痛苦。

任何和所有的帮助将不胜感激。

4

1 回答 1

0

你几乎肯定想做一些更像是找到“完整地址”的行,然后用另一行替换它,行号是一个非常容易破坏的东西。我不是可以轻松测试整个事情的地方,但是您想要类似的东西:

Dim oFSO
Dim inTS,OutTS
Dim tline
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set inTS = oFSO.OpenTextFile("default.rdp",1,1)
Set outTS = oFSO.CreateTextFile("mynew.rdp", true,true)
While inTS.AtEndOfStream = false 
tline = inTS.ReadLine
If InStr(1,tline,"full address:",1) > 0 Then 
WScript.Echo("found " &InStr(tline,"full address:"))
outTs.WriteLine("full address:s:SERVER")
Else
outTs.WriteLine(tline)
End If
Wend       
inTS.Close
outTS.Close

虽然你可能在使用 unicode 时遇到了一些问题,但运行 gnuwin32 的 sed 版本之类的东西可能会更好

于 2013-03-25T21:58:27.240 回答