我正在创建一些我经常使用的通用doskey命令。我试图在doskey宏中使用多个变量,有时一个变量会有空格。我尝试引用变量值,但它不起作用。唯一起作用的是在宏字符串的末尾添加更多的变量。
我想使用以下方式: doskey keycmd=plink -l user -pw password $1 -batch $2 然后执行如下:c:> keycmd hostname "dir /p /users"
但是当执行时,doskey看到的是:$1=hostname,$2="dir",而"dir"不是命令,/p和/users完全被忽略。
为了使其工作,我必须这样定义它: doskey keycmd=plink -l user -pw password $1 -batch $2 $3 $4 并按以下方式执行:c:> keycmd hostname dir /p /users
是否有办法将"dir /p /users"分组为单个$2变量?对于doskey变量参数,您只能获得9个,$1..$9。最终,我可能会在复杂的命令上耗尽。我尝试过使用单引号和双引号,但都无济于事。但是,在Windows cmd命令的其他任何地方使用单引号和/或双引号似乎都有效。
是否有解决方法或者说我只是在尝试过多的doskey操作?
我想使用以下方式: doskey keycmd=plink -l user -pw password $1 -batch $2 然后执行如下:c:> keycmd hostname "dir /p /users"
但是当执行时,doskey看到的是:$1=hostname,$2="dir",而"dir"不是命令,/p和/users完全被忽略。
为了使其工作,我必须这样定义它: doskey keycmd=plink -l user -pw password $1 -batch $2 $3 $4 并按以下方式执行:c:> keycmd hostname dir /p /users
是否有办法将"dir /p /users"分组为单个$2变量?对于doskey变量参数,您只能获得9个,$1..$9。最终,我可能会在复杂的命令上耗尽。我尝试过使用单引号和双引号,但都无济于事。但是,在Windows cmd命令的其他任何地方使用单引号和/或双引号似乎都有效。
是否有解决方法或者说我只是在尝试过多的doskey操作?