关闭=========================================================...
本帖最后由 2012雨晨绿软 于 2019-6-4 13:22 编辑看来没好的答案 生成后其它原封不变就%VER%比如提前设定set VER=18908.1000,生成新的文本中要把%VER%全部替换成18908.1000 虽然不会写,有个命令行工具叫sed听说过没?pecmd.exe中也有这命令,看这个变量靠近结尾,用正则表达式匹配应该可以吧? dos版块。 看不懂需求,
会用正则吗?
楼主是想在命令行完成对吧?
有个小程序 fr.exe 可轻松完成:
FR.exe" "aaa.txt" -fic:"%VER%" -t:"%REV%"
但这个小程序我发不上来,你可在网上的Office绿色版本中找到它,在目录中搜索一下即可找到。 https://blog.csdn.net/albertsh/article/details/79919465 https://blog.csdn.net/ligaoming_123/article/details/88369283 https://blog.csdn.net/deepfuture/article/details/83560384 https://blog.csdn.net/haibo19981/article/details/52161681 my9823 发表于 2019-6-4 05:34
虽然不会写,有个命令行工具叫sed听说过没?pecmd.exe中也有这命令,看这个变量靠近结尾,用正则表达式匹配 ...
谢谢,不想用引入其它程序 本帖最后由 chishingchan 于 2019-6-4 10:30 编辑
既然提问就要方便解答者,将文本贴上来一目了然,何乐而不为?!
顺便说一句,批处理是处理不了 UTF-8 的文本的,如果可以的话可以考虑 VBScript
<?xml version='1.0' encoding='utf-8' standalone='yes'?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v3" copyright="Copyright (c) Microsoft Corporation. All Rights Reserved." manifestVersion="1.0">
<assemblyIdentity buildType="release" language="neutral" name="Microsoft-Windows-EnterpriseGEdition" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" version="10.0.%VER%"/>
<package identifier="Windows EnterpriseG Edition" releaseType="Product">
<update name="Microsoft-Windows-Foundation-Package">
<package contained="false" integrate="visible">
<assemblyIdentity buildType="release" language="neutral" name="Microsoft-Windows-Foundation-Package" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" version="10.0.%VER%"/>
</package>
</update>
<update name="Microsoft-Windows-EditionSpecific-EnterpriseG-Package">
<package contained="false" integrate="hidden">
<assemblyIdentity buildType="release" language="neutral" name="Microsoft-Windows-EditionSpecific-EnterpriseG-Package" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" version="10.0.%VER%"/>
</package>
</update>
<update name="Microsoft-Windows-Client-Features-Package">
<package contained="false" integrate="hidden">
<assemblyIdentity buildType="release" language="neutral" name="Microsoft-Windows-Client-Features-Package" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" version="10.0.%VER%"/>
</package>
</update>
<update name="Microsoft-Windows-EditionPack-Professional-Package">
<package contained="false" integrate="hidden">
<assemblyIdentity buildType="release" language="neutral" name="Microsoft-Windows-EditionPack-Professional-Package" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" version="10.0.%VER%"/>
</package>
</update>
<update name="Microsoft-Windows-RegulatedPackages-Package">
<package contained="false" integrate="hidden">
<assemblyIdentity buildType="release" language="neutral" name="Microsoft-Windows-RegulatedPackages-Package" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" version="10.0.%VER%"/>
</package>
</update>
</package>
</assembly> hfut 发表于 2019-6-4 07:43
https://blog.csdn.net/ligaoming_123/article/details/88369283
谢谢,不借助任何其它程序 BAT是什么?
百度
阿里
腾讯
? chishingchan 发表于 2019-6-4 10:17
既然提问就要方便解答者,将文本贴上来一目了然,何乐而不为?!
谢谢,我要的不是这种写法,看我自己贴更新的写法 chishingchan 发表于 2019-6-4 10:17
既然提问就要方便解答者,将文本贴上来一目了然,何乐而不为?!
顺便说一句,批处理是处理不了 UTF-8...
忽略格式,ANSI也可以 不推荐使用批处理来弄有特殊符号的文件,兼容性特别差,使用VBS没有黑窗口而且更快。当然如果楼主是使用到没有VBS的PE里那就只有用BAT了,这种程序写出来还不行,需要细心调试。 楼主已不能使用遮遮掩掩的词语来形容,果然是够神秘的!连提问过的问题也一并“消灭”,更不奢望你的问题得到答案后让后人有学习的机会。
对于这样的行为我是坚决反对的! chishingchan 发表于 2019-6-4 15:10
楼主已不能使用遮遮掩掩的词语来形容,果然是够神秘的!连提问过的问题也一并“消灭”,更不奢望你的问题得 ...
附件都传了有什么好遮遮掩掩的。其实要是像你说的那样我还开贴干嘛,目前自己消化 2012雨晨绿软 发表于 2019-6-4 00:33
生成后其它原封不变就%VER%比如提前设定set VER=18908.1000,生成新的文本中要把%VER%全部替换成18908.1000
在环境变量中添加VER就行了啊. 很简单的不需要类似编程模样的做法.或者在批处理的开头处定义一个临时的环境变量.之后所有使用%ver% 都会变成你定义的数值了.
页:
[1]