Board logo

标题: [文本处理] 批处理中带引号命令输入文本文件的问题[已解决] [打印本页]

作者: vydz    时间: 2022-5-2 19:07     标题: 批处理中带引号命令输入文本文件的问题[已解决]

本帖最后由 vydz 于 2022-5-3 00:46 编辑

(Get-Content r:\5.html) -replace 'var mvid=.*','var mvid="50005";'  |  Set-Content r:\5.html
或者
(Get-Content r:\5.html) -replace 'var mvid=“.*','var mvid="50005";'  |  Set-Content r:\5.html
========================================
想把上面这命令通过echo写到r:\tmp.ps1这个文件里,能写的多个双引号,不多双引号的不能写。
1、失败
echo (Get-Content r:\5.html) -replace 'var mvid=.*','var mvid="%LastFile%";'  |  Set-Content r:\5.html >r:\tmp.ps1
2、失败
echo (Get-Content r:\5.html) -replace 'var mvid=".*','var mvid="%LastFile%";'  |  Set-Content r:\5.html >r:\tmp.ps1
3、能写,但是最后多了个双引号
echo (Get-Content r:\5.html) -replace 'var mvid=".*','var mvid="%LastFile%";'  |  Set-Content r:\5.html" >r:\tmp.ps1
作者: idwma    时间: 2022-5-2 21:34

|要转义义^|
作者: vydz    时间: 2022-5-3 00:45

谢谢楼上的,主要是看到第3种能输出就没往转义上想,现在改了下就能用了,就把需要转义的符号前都加个^就行了。
echo (Get-Content r:\5.html) -replace 'var mvid=.*','var mvid=^"%LastFile%^";'  ^|  Set-Content r:\5.html >r:\tmp.ps1




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2