是否有Windows命令行命令,我可以使用它来获得当前工作目录的完整路径?

另外,如何将此路径存储在批处理文件中使用的变量中?


当前回答

这对我来说一直都很有效:

SET CurrentDir="%~dp0"

ECHO The current file path this bat file is executing in is the following:

ECHO %CurrentDir%

Pause

其他回答

对于Windows, cd本身会显示当前工作目录。

对于UNIX和类似工作的系统,pwd将执行相同的任务。您还可以在某些shell下使用$PWD shell变量。我不确定Windows是否支持通过shell变量获取当前工作目录。

在Windows命令提示符中,chdir或cd将打印控制台中当前工作目录的完整路径。

如果我们想复制路径,那么我们可以使用:cd | clip。

对于Windows,我们可以使用

cd

和Linux

pwd

命令就在那里。

引用Windows帮助中的set命令(set /?):

If Command Extensions are enabled, then there are several dynamic
environment variables that can be expanded but which don't show up in
the list of variables displayed by SET.  These variable values are
computed dynamically each time the value of the variable is expanded.
If the user explicitly defines a variable with one of these names, then
that definition will override the dynamic one described below:

%CD% - expands to the current directory string.

%DATE% - expands to current date using same format as DATE command.

%TIME% - expands to current time using same format as TIME command.

%RANDOM% - expands to a random decimal number between 0 and 32767.

%ERRORLEVEL% - expands to the current ERRORLEVEL value

%CMDEXTVERSION% - expands to the current Command Processor Extensions
    version number.

%CMDCMDLINE% - expands to the original command line that invoked the
    Command Processor.

注意%CD% -扩展到当前目录字符串。部分。