批处理文件中的当前目录是什么?

余生颓废 提交于 2020-02-26 11:08:01

我想创建一些批处理文件来自动化程序。

我的问题是当我创建批处理文件时,当前目录是什么? 它是文件所在的目录,还是与命令提示符中显示的目录相同或其他内容?


#1楼

假设您在当前目录中打开一个文件。 命令是:

 start %cd%\filename.filetype

我希望我回答你的问题。


#2楼

它是您启动批处理文件的目录。 例如,如果您的批处理在c:\\dir1\\dir2并且您执行cd c:\\dir3 ,则运行批处理,当前目录将为c:\\dir3


#3楼

通常是启动批处理文件的目录,但是如果从快捷方式启动批处理文件,则可以给出不同的起始目录。 此外,当您在cmd中,并且您当前的目录是c:\\dir3 ,您仍然可以使用c:\\dir1\\dir2\\batch.bat启动批处理文件,在这种情况下,当前目录将是c:\\dir3


#4楼

在批处理文件中:

  • %cd%当前工作目录 (变量)
  • %~dp0指的是批处理文件目录的完整路径(静态)
  • %~dpnx0%~f0都指向批处理目录和文件名(静态)的完整路径。

#5楼

在批处理文件中,%cd%是当前目录最常用的命令,尽管您可以设置自己的变量:

set mypath=%cd%
echo %mypath% (where %mypath% is the current directory that the batch file is sitting in)

所以说你想打开Myprog.exe。 如果它在同一个文件夹中,您将使用以下命令:

start %mypath%\Myprog.exe

这将打开当前文件夹中的Myprog。

另一种选择是在C中创建一个名为AutomatePrograms的目录。 然后,将文件传输到该文件夹​​,然后可以使用以下命令打开它们:

start "" "C:\AutomatePrograms\Myprog1.exe"
start "" "C:\AutomatePrograms\Myprog2.exe"
start "" "C:\AutomatePrograms\Myprog3.exe"
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!