【发布时间】:2012-03-23 10:08:43
【问题描述】:
我正在尝试将 for 语句的变量设置为另一个变量。当我这样做时:
for /f "tokens=* delims= " %%p in (plugins.txt) do set pp = %%p
它工作正常。但是我想做更多,所以我在 ( 现在它不起作用。为什么会这样以及我该如何解决它?
for /f "tokens=* delims= " %%p in (plugins.txt) do (
set pp = %%p
echo %pp%
echo %pp%
echo %%p)
编辑:添加输入和所需输出
plugins.txt 的内容http://subversion/svn/dotCMSPlugins/CustomLogin/trunk
期望的输出CustomLogin
【问题讨论】:
-
您确定要删除尾随空格吗,就像您的
delims=<space>一样 -
jeb 的回答解决了主要问题。但是在分配变量时要小心多余的空格。你可能想要
set pp=%%p。您的代码set pp = %%p有多余的空格,因此变量名包含一个尾随空格,而值包含一个前导空格。 -
@dbenham:嗯,这和我说的不一样吗? :-)
-
@jeb:哎呀,你确实做到了。我第一次阅读您的答案时不知何故错过了那句话。
标签: command-line batch-file for-loop