【发布时间】:2012-11-19 07:06:16
【问题描述】:
我是 powerShell 和 cmd 的新手,抱歉。 我正在尝试编写可以像这样生成定义的脚本
#define VERSION "a89aa153a054b865c0ef0a6eddf3dfd578eee9d2"
在 VERSION 中我想从下一个来源设置参数
.git\refs\heads\project
我尝试了下一个 cmd 脚本,但我遇到了 " 字符的问题,我无法转义它
echo #define VERSION \" > ver.h
type .git\refs\heads\project >> ver.h
echo \" >> ver.h
但是当我尝试运行它时遇到了问题。 我创建了文件 writeDefine.ps1
Const ForReading = 1
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("D:\Scripts\DefineTemplate.txt", ForReading)
Do Until objFile.AtEndOfStream
strText = ""
strCharacter = objFile.Read(1)
If strCharacter = Chr(34) Then
Do Until objFile.AtEndOfStream
strNewCharacter = objFile.Read(1)
If strNewCharacter = Chr(34) Then
Exit Do
End If
If strNewCharacter <> "" Then
strText = strText & strNewCharacter
End If
Loop
Wscript.Echo strText
End If
Loop
objFile.Close
我想读取模板并在 " 字符之间插入 VERSION 并将该文本写入 "ver.h",但是 我有一个错误
D:\writeHeader.ps1:4 symbol:67
+ Set objFile = objFSO.OpenTextFile("D:\Scripts\DefineTemplate.txt", <<<< ForReading)
+ CategoryInfo : ParserError: (,:String) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : MissingExpressionAfterToken
定义模板.txt
#define VERSION ""
请帮帮我。谢谢!
【问题讨论】:
-
你的代码是vbscript,没有powershell。将其重命名为 writeDefine.vbs。
标签: windows git file powershell cmd