【问题标题】:Execute Custom Command in CMD在CMD中执行自定义命令
【发布时间】:2022-11-27 14:48:05
【问题描述】:

我在具有自定义格式的 CMD 中查看我的 git 日志,

git log --date=format:'%d %b %I:%M%p' --pretty=format:"%C(Yellow)%h%Creset %cd%Cgreen%d %Creset%s" -10

现在我每次都必须从我的记事本中复制这个命令,所以我在想我是否可以创建一个自定义的 cmd 命令来运行上面的命令。

例如。我只想写

showlog

它会执行我的命令。

我尝试创建一个 bat 文件并找到了这个 command

start cmd.exe @cmd /k "git log --oneline -10"

但它打开了一个新窗口我希望它像其他 git 命令一样在同一个窗口中执行

所以我想知道

  1. 它是如何在同一个窗口内完成的?
  2. 我在哪里可以了解更多相关信息?

【问题讨论】:

  • 您提出的问题实际上是关于 .BAT 文件的,但是您可以在这里询问有关 Git 的问题:具体来说,关于 Git 别名,以及关于 git log 漂亮格式。由于您已经接受了 .BAT 答案,我已经删除了 Git 标签。

标签: windows batch-file cmd command


【解决方案1】:

您不必在批处理文件中使用 startcmd,只需使用命令本身:

@echo off
my command and parameters here

所以对于你的 showlog.bat:

@echo off
git log --date=format:'%d %b %I:%M%p' --pretty=format:"%C(Yellow)%h%Creset %cd%Cgreen%d %Creset%s" -10

% 可能有问题,您可能必须使用 %% 将其转义。在调试时,您可以删除 @echo off 让它回显命令...

【讨论】:

    【解决方案2】:

    您可以考虑使用更多 Git 方式构建 Git alias(使用 git showlog)以获得相同的输出,而不是(正确的)@anders 自定义 cmd 命令的方式:简单、(某种程度上)更快且更易于管理的解决方案。

    就像是

    git config --global alias.showlog 'git log <FULL TAIL OF YOUR COMMAND HERE>'
    

    【讨论】:

      猜你喜欢
      • 2014-04-06
      • 1970-01-01
      • 2015-05-10
      • 2021-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多