我无法设置包含批处理文件的文件夹的正确路径。例如,现在,我有一个名为" example.zip"的压缩文件。此zip文件包含4个文件(file1,file2,file3,file4)。当用户右键单击并提取4个文件时,可以选择重命名文件路径和文件夹名称。默认情况下,文件夹名称保存为"示例"。在我的批处理脚本中,如果他们不更改文件夹名称,我可以找到并移动文件。但是,如果他们将文件夹名称路径更改为C:\ Users \%username%\ Downloads \" notexample"然后它搞砸了批处理文件。
我想知道如何在用户解压缩zip文件后获取文件夹路径,并将其命名为默认名称以外的其他名称。
我的批处理脚本中的当前配置是
for \ f" delims =" %% F in(' dir / b / s" cd:~0,2%\ Users \%username%\ example" 2 ^> nul')设置filepath =% %F
这只是搜索匹配"示例"的任何文件夹。在Users \ Downloads目录中并获取文件路径。如果用户重命名文件夹" notexample",您可以看到问题。我的批处理脚本大喊"找不到文件夹"
由于
答案 0 :(得分:1)
要获取批处理文件的位置非常简单,请使用%~dp0
变量:
echo %~dp0
返回批处理文件的文件夹。
这意味着你可以简单地使用它:
set "filepath=%~dp0"
这不需要for
循环。