【问题标题】:Nesting String Manipulations in DOSDOS中的嵌套字符串操作
【发布时间】:2012-07-06 15:41:07
【问题描述】:

我知道你可以像这样在 DOS 中使用字符串操作:

echo %TIME%
echo %TIME:~0,2%
echo %TIME: =0%

这三个命令的输出是:

 8:36:05.60
 8
08:36:12.93

我想知道如何结合第二行和第三行得到这个输出:

08

我不能使用 set 来临时存储一个值,因为我想在命令行参数中使用这个字符串。

【问题讨论】:

    标签: string dos


    【解决方案1】:

    在纯 DOS 中,您没有嵌套语句。 除非您的应用程序(参数是)是控制台应用程序,否则您将没有控制台来解析您的环境变量(在运行框中,尝试记事本 c:\%TIME:~0,2%.txt 并查看发生)。
    如果它是一个控制台应用程序,那么您将能够使用 env vars,但不解析,由 cmd 自己处理。

    因此,您必须使用 cmd.exe 或批处理文件来启动您的应用程序,并且您可以在 SET 之间使用您需要的所有表达式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-08-06
      • 2022-01-17
      • 1970-01-01
      • 2017-05-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多