如何用批处理变量中的两个双引号替换任何双引号?

时间:2016-06-01 12:55:57

标签: variables batch-file

我正在尝试制作一个逐字输出剪贴板的程序。到目前为止,我已经做了所有事情,除了解决如何逃避VBS文件中的双引号。要做到这一点,我需要另一个双引号。这是我现在的代码:

@echo off & setlocal & cd "%temp%" & paste > x.txt
for /f "delims=" %%A in (x.txt) do set X=%%A & timeout /t 4 /nobreak
:loop
for /f "tokens=1*" %%A in ("%X%") do (
set "Y=%%A" & set X=%%B
)
set Z=%Y:^"=^"^"%
echo CreateObject("Wscript.Shell").SendKeys "%Z% " > x.vbs
start /wait x.vbs & if defined Y (set "Y=" & goto :loop) & pause

我显然在这方面做错了什么:

set Z=%Y:^"=^"^"%

1 个答案:

答案 0 :(得分:3)

你不需要逃避引号:

set z="a--b"
echo %z:"=""%