【问题标题】:Extract drive letter from "set /p P=" in bat file从 bat 文件中的“set /p P=”中提取驱动器号
【发布时间】:2014-02-18 16:44:55
【问题描述】:

我正在尝试从“set /P P=”变量中提取驱动器号,其中包含文件夹的路径。

设置 /P P= 回声 %~dP

我已阅读帮助并尝试了许多使用 % 和 %% 的变体,但我不明白为什么它不起作用。

当我尝试...

回声 %~d1

效果很好,但不能使用命令行参数。

我不傻,只是个新手。

【问题讨论】:

  • 仅供参考 %~ 表示法仅适用于批次接收到的数字变量以表示其自身及其参数。

标签: batch-file


【解决方案1】:

set /?中的示例和一般用法

echo %p:~0,1%

从变量 %p%,从第一个位置(基于 0 索引),取一个字符。包括冒号(两个字符)

echo %p:~0,2%

如果您更喜欢问题中的 sintax,则可以使用 for 命令

for /f "tokens=*" %%a in ("%p%") do echo %%~da

【讨论】:

  • 非常感谢!就是这样。尝试了第二个变体,但没有克服 ("%p%") 部分,改用 ('%%p') 和 (%p%) 之类的东西,出错或什么都没有。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-02-06
  • 2011-03-22
  • 1970-01-01
  • 1970-01-01
  • 2016-08-12
  • 1970-01-01
  • 2014-01-11
相关资源
最近更新 更多