在Windows cmd.exe中使用FOR分配别名


0

我一直在尝试使用循环创建多个别名但没有成功。我不是专业人士,请耐心等待...有谁知道我的代码中有什么问题或者我如何在命令提示符中实现它?我知道如何在PowerShell中执行此操作,但我正在尝试重现cmd的代码。这是代码:

@ECHO OFF

FOR %%G IN (a,b,c,d,e,f,g,h) DO (
    DOSKEY %%GG=cd %%GG:\
)

以下是运行宏时得到的结果:


那么您对批处理文件有何看法或体验?
Appleoddity

我刚刚添加了截图。
prubini87

注意 Windows cmd是 DOS 。没有 for 像DOS那样循环
phuclv

Answers:


2

你在定义 DOSKEY %%GG=cd %%GG:\ (有双Gs),所以你必须输入 aG 为了换成驱动器 aG: (这不是有效的驱动器号)。与其他驱动器相同

此外,要更改当前驱动器,您只使用驱动器号而不是 cd。所以要更改到A上的当前目录:运行 A:。但是,如果要强制更改当前驱动器和当前目录,请使用 /D 选项

你必须删除不必要的 G 那里

@ECHO OFF

FOR %%G IN (a,b,c,d,e,f,g,h) DO (
    DOSKEY %%G=%%G:
    rem Or DOSKEY %%G=cd /D %%G:
)

哇...非常感谢你!而已! :d
prubini87
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.