windows 如何将一个VBScript转换成一个Liner?

dgenwo3n  于 2023-11-21  发布在  Windows
关注(0)|答案(2)|浏览(148)

此问题在此处已有答案

Understanding VBS multi-line notation(1个答案)
18天前关门了。
我得到了一个任意的vbscript(.vbs)和一个把它变成一行程序的脚本。
我试着用一个collon :来替换换行符(\n\r\n,取决于你的平台),但是这并不适用于每一种类型的行。
vbscript的摘录如下所示:

  1. Function eQPTbXFQgIHMhx(SCpPBrGbXYL)
  2. uqOxzKfjGCF = "<B64DECODE xmlns:dt=" & Chr(34) & "urn:schemas-microsoft-com:datatypes" & Chr(34) & " " & _
  3. "dt:dt=" & Chr(34) & "bin.base64" & Chr(34) & ">" & _
  4. SCpPBrGbXYL & "</B64DECODE>"
  5. Set dSlfSWLUy = CreateObject("MSXML2.DOMDocument.3.0")
  6. dSlfSWLUy.LoadXML(uqOxzKfjGCF)
  7. eQPTbXFQgIHMhx = dSlfSWLUy.selectsinglenode("B64DECODE").nodeTypedValue
  8. set dSlfSWLUy = nothing
  9. End Function

字符串

egdjgwm8

egdjgwm81#

我编写了一个小的python脚本,它将vbscript转换为一行代码,并处理字符串连接& _<new line>

  1. def convert_to_oneliner(vbscript)
  2. return (
  3. open(vbscript, "rt")
  4. .read()
  5. .replace("\r", "")
  6. .replace("\n", ":")
  7. .replace("\t", " ")
  8. .replace("& _ :", "& ")
  9. .replace("& _:", "& ")
  10. )

字符串
备注:

  • \r已剥离
  • \n替换为冒号
  • \t被替换为空白
  • 带换行符的串联被不带换行符的串联替换
展开查看全部
ufj5ltwl

ufj5ltwl2#

首先,末尾的“& ”表示行的延续,将“\r\n”替换为“"。第二步,将所有行放在一行上,用冒号分隔它们。

相关问题