如何删除批处理文件中的子路径?

How to delete subpath in batch file?

如何编辑从命令行参数获取的路径并删除最后一个子目录?

例如我 运行 我的带有参数的批处理文件: C:\Users\Aga\Desktop\something

而且我只想使用 "C:\Users\Aga\Desktop" 部分在我的批处理文件中。

将此添加为批处理文件的第一行:

@If Not "%~dp1"=="" @(Set "Parent=%~dp1"&Call Set "Parent=%%Parent:~,-1%%")

然后根据需要在整个脚本中使用 %Parent%(如果输入是目录,则%Parent% 将是树上的下一个目录或容器文件夹(如果输入是文件).