是否有可用于获取当前工作目录的完整路径的 Windows 命令行命令?
另外,如何将此路径存储在批处理文件中使用的变量中?
是否有可用于获取当前工作目录的完整路径的 Windows 命令行命令?
另外,如何将此路径存储在批处理文件中使用的变量中?
如果您直接使用cdshell,或者%cd%如果您想在批处理文件中使用它(它的行为类似于环境变量),则不带参数使用。
您可以按如下方式设置批处理/环境变量:
SET var=%cd%
ECHO %var%
来自 Windows 7 x64 cmd.exe 的示例屏幕截图。

更新:如果你做 aSET var = %cd%而不是SET var=%cd%,下面会发生什么。感谢杰布。

set引用命令 ( )的 Windows 帮助set /?:
如果启用了命令扩展,那么有几个动态的
可以扩展但不显示的环境变量
SET 显示的变量列表。这些变量值是
每次扩展变量的值时动态计算。
如果用户明确定义了具有这些名称之一的变量,则
该定义将覆盖下面描述的动态定义:
%CD% - 扩展为当前目录字符串。
%DATE% - 使用与 DATE 命令相同的格式扩展到当前日期。
%TIME% - 使用与 TIME 命令相同的格式扩展到当前时间。
%RANDOM% - 扩展为 0 到 32767 之间的随机十进制数。
%ERRORLEVEL% - 扩展为当前的 ERRORLEVEL 值
%CMDEXTVERSION% - 扩展到当前的命令处理器扩展
版本号。
%CMDCMDLINE% - 展开到调用
命令处理器。
注意%CD% - expands to the current directory string.部分。
在 Unix 上?
密码
这一直对我有用:
SET CurrentDir="%~dp0"
ECHO The current file path this bat file is executing in is the following:
ECHO %CurrentDir%
Pause
对于 Windows,我们可以使用
cd
对于 Linux
pwd
命令在那里。
在 Windows 上:
CHDIR 显示或更改当前目录的名称。
在 Linux 中:
PWD 显示当前目录的名称。
在下创建一个.bat文件System32,让我们将其命名copypath.bat为复制当前路径的命令可以是:
echo %cd% | clip
说明:
%cd%会给你当前的路径
CLIP
Description:
Redirects output of command line tools to the Windows clipboard.
This text output can then be pasted into other programs.
Parameter List:
/? Displays this help message.
Examples:
DIR | CLIP Places a copy of the current directory
listing into the Windows clipboard.
CLIP < README.TXT Places a copy of the text from readme.txt
on to the Windows clipboard.
现在copypath可以从任何地方获得。
对于 Windows,cd它本身会显示当前的工作目录。
对于 UNIX 和类似工作的系统,pwd将执行相同的任务。您还可以$PWD在某些 shell 下使用 shell 变量。我不确定 Windows 是否支持通过 shell 变量获取当前工作目录。
基于对 chdir 帖子的评论中的后续问题(将数据存储在变量中),我打赌他想存储当前路径以在更改目录后恢复它。
原始用户应该查看“pushd”,它会更改目录并将当前目录推送到可以使用“popd”恢复的堆栈上。在任何现代 Windows cmd shell 上,这是制作批处理文件的方式。
如果您真的需要获取当前路径,那么现代 cmd shell 也有一个 %CD% 变量,您可以轻松地将其塞入另一个变量中以供参考。
在 Windows 命令提示符下,chdir或cd将在控制台中打印当前工作目录的完整路径。
如果我们想复制路径,那么我们可以使用:cd | clip。
@echo off
for /f "usebackq tokens=*" %%x in (`chdir`) do set var=%%x
echo The currenct directory is: %var%
但是,当然,gmaran23 的答案要容易得多。
作为可能的代码之一
echo off
for /f "usebackq tokens=* delims= " %%x in (`chdir`) do set var=%var% %%x
echo The current directory is: "%var:~1%"
在 Windows 上,键入cd当前工作路径。
在 Linux 上,pwd用于当前工作路径。