batch-file - 删除/F 末尾的空格

标签 batch-file command dos

大家好,我正在尝试使用 FOR /F批处理文件中的命令,但我遇到了问题。

我运行它....

rem finding model number
for /F "delims= skip=1 tokens=*" %%a in ('wmic csproduct get name') do if not defined model set model=%%a

它运作良好,我得到了我想要的结果
result: 637263G

现在假设我在 c:\windows\下创建了一个名为“637263G”的文件夹
eg:c:\windows\637263G\test

我创建了一个批处理去路径......
for /F "skip=1 tokens=*" %%a in ('wmic csproduct get name') do if not defined model set model=%%a

cd windows\%model%\test

………………………………………………………………………………………………………………………………………………………………………………………………………………………………

这会爆炸,因为 %model% 正在返回 "c:\windows\637263G \test"而不是 "c:\windows\637263G\test"
它在模型名称后留下一个空格。

有谁知道怎么去掉后面的空格?

最佳答案

您可以使用替换来抑制 %%a 中的所有空间:

set a=%a: =%

关于batch-file - 删除/F 末尾的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14875490/

相关文章:

android - 如何在 Android 设备上安装 java 运行时?

assembly - 从 DOS 程序进入保护模式

batch-file - 批处理文件以获取特定安装的软件以及版本

batch-file - 如何使 bat 文件不断重复?

command - 将带有空格的路径作为参数传递给bat文件

linux - 删除行中两个符号之间的字符串

java - Netbeans 和 DOS 风格的进度条

windows - vbs中如何传递包含空格的参数

batch-file - 如何在 Batch 中不换行的情况下将双引号回显到文件中?

mysql - 在文本文件中存储批处理脚本的时间和错误