cd $PACKAGING_EARS_PATH/target/*/*
但在 Windowscd target/*/*
中无法正常工作。
我想得到最后一个目录。是否可以?
看看这是否能让你的船浮起来:
@echo off
for /d /r "%PACKAGING_EARS_PATH%/target" %%a in (*) do set "folder=%%a"
cd "%folder%"
看起来您正在使用 Unix 语法来扩展环境变量。Windows 使用%var%
.
如果有更深的子目录,foxidrive 解决方案可能无法给出正确答案。
一个合适的解决方案需要两个步骤。
从命令行:
for /d %A in ("%PACKAGING_EARS_PATH%\target\*") do @for /d %B in ("%A\*") do @cd %B
使用批处理:
@echo off
for /d %%A in ("%PACKAGING_EARS_PATH%\target\*") do for /d %%B in ("%%A\*") do cd %%B
Windowscmd
有一个交互式命令行 TAB 文件夹(和文件)名称完成功能,可能对您有用。例如,键入cd te
然后按<tab>
键,它将自动展开到以 . 开头的第一个文件夹te
。反复按<tab>
,它将循环浏览所有匹配的文件夹名称。您可以省略前导字符,它只会循环浏览所有文件夹名称。
默认情况下,TAB 完成功能可能会也可能不会启用。CMD /F:ON
将cmd
在启用名称完成的情况下显式启动。