我想通过 CD 跳过一个具有可变但固定语法名称的文件夹。语法是 number.number.number.number
我尝试使用 cd 到*.*.*.*
(我不知道如何格式化它)但是这似乎不起作用,有没有办法在 Windows 机器上的 CMD 中执行此操作?
谢谢!
答案1
1.你不需要"tokens=* delims= "
delimiter
您的文件夹名称 没有默认值,因此不需要使用部分或全部tokens
...
观察:无需指定token=1
或,将使用tokens=*
默认令牌( )并满足您的需求tokens=1
2.使用/A:D
仅用于显示文件夹/目录指定:Attributes:Directories == /A:D
您需要在文件夹中使用它,因此只需列出您的文件夹,任何名称中具有相同正则表达式的文件都不会被使用。
for /F %%i in ('dir /B /A:D^|findstr [0-9]\.[0-9]\.[0-9]\.[0-9]')do cd /d "%%~i"
答案2
确保同一模式的目录不超过一个。
For /f "tokens=* delims= " %%a in ('dir /b ^| findstr [0-9]\.[0-9]\.[0-9]\.[0-9]') do cd "%%~a"
这将使用正则表达式进行匹配(我会放弃 findstr,因为它有严重的限制和无文档记录)