我正在尝试删除doskey宏的传入引号,这将让我使用“export”作为“set”。这就是我所拥有的:
doskey export=set $*
除非我使用以下内容运行:
export VAR="value"
我最终得到了:
VAR="value"
vs我想要的:
VAR=value
我想我必须编写一些方法来“清理”要设置的输入,但我不知道该怎么做 - 比如“for(var1 = var2)do set var1 = ~var2”,但是我无法做到这一点。
帮助!
答案 0 :(得分:0)
你也可以用for循环来做,但这更容易:
set ORIGARGS=%*
set ARGCOPY=
:copyargs
set "ARGCOPY=%ARGCOPY% %~1"
shift
if not [%1]==[] goto:copyargs
即。 (线由线)
%*
,因为我们要销毁它。ARGCOPY
)以将转换后的参数放入%1
附加到ARGCOPY
,但删除引号(%~1
)shift
左边一个空格的所有参数(即%2
变为%1
等等。)%1
没有值,否则goto
第3行,:copyargs
标签所在的位置。 当您完成%ARGCOPY%
时,将包含没有引号的参数。