首页 > 解决方案 > 如何批量为函数创建别名?

问题描述

我想批量创建一个函数的别名,如下所示:

echo off 
DOSKEY getMessage=call :message

:message
  SET answer=
  SET /P answer=What is your message? :
  IF EXIST %answer% (
  echo %answer%
) else(
 goto mesage
)

我没有批处理经验,但我想用一些 git 命令创建一个别名。

标签: batch-filedoskey

解决方案


以下是一些创建简单和复杂别名的方法:

  • $G or $g- 重定向输出。使用这些特殊字符中的任何一个将输出发送到设备或文件而不是屏幕。此字符等效于输出 (>) 的重定向符号。
  • $G$G or $g$g- 将输出附加到文件的末尾。使用这些双字符中的任何一个将输出附加到现有文件,而不是替换文件中的数据。这些双字符相当于输出的附加重定向符号 (>>)。
  • $L or $l- 重定向输入。使用这些特殊字符中的任何一个来从设备或文件而不是从键盘读取输入。此字符等效于输入 (<) 的重定向符号。 $B or $b- 将宏输出发送到命令。这些特殊字符等价于使用管道(**
  • $T or $t- 分隔命令。当您创建宏或在 doskey 命令行上键入命令时,请使用这些特殊字符中的任何一个来分隔命令。这些特殊字符相当于在命令行中使用与号 (&)。
  • $$- 指定美元符号字符 ($)。
  • $1 through $9- 表示运行宏时要指定的任何命令行信息。特殊字符 $1 到 $9 是批处理参数,使您能够在每次运行宏时在命令行上使用不同的数据。doskey 命令中的 $1 字符类似于批处理程序中的 %1 字符。
  • $*- 表示您在键入宏名称时要指定的所有命令行信息。特殊字符 $* 是一个可替换参数,类似于批处理参数 $1 到 $9,但有一个重要区别:在宏名称之后在命令行中键入的所有内容都将替换宏中的 $*。

创建一个别名的示例,该别名从用户那里获取一个 url 并对其进行 ping 操作:

doskey getping="set /p URL=Enter an URL:$Tping %URL%"

推荐阅读