【问题标题】:Linux commands within bat file - Aliasingbat 文件中的 Linux 命令 - 别名
【发布时间】:2016-04-24 20:27:14
【问题描述】:

我似乎遇到了问题。 我正在尝试在 Windows 批处理文件中编写一个使用 Linux 命令(例如 rmmvclearcat)的批处理文件,但问题是我似乎无法弄清楚是什么我需要这样做,以便 Windows 命令行能够识别当我输入 mv 时,我希望它为我移动文件,或者 rm 当然删除文件。

到目前为止,我发现我可以使用__DOSKEY__,但它不适用于批处理文件或参数(doh!)。因此,到目前为止,我得到的只是:

@echo off
mv dummy.txt 

现在我的问题是如何让 Windows 命令行识别 mv = move ?每次我运行该文件时,它只会给我一个空白命令行。

我知道这听起来可能很愚蠢,但我在命令行的 Linux 方面的经验比在 Windows 方面的经验更多,任何帮助将不胜感激!

【问题讨论】:

  • 批处理文件命令需要与系统上安装的 shell 内置程序或程序相匹配。因此,您的选择是使用 CMD.EXE 内置命令(move 而不是 mvdel 而不是 rmtype 而不是 cat)或者在您的窗户机。例如,Windows 版 Git 和 Cygwin 都带有大量类似 Linux 的工具。
  • 输入doskey /?查看如何指定参数。在批处理中,请参阅call /? 以获取批处理参数。所以一个名为 mv.bat 的批处理文件将有@move %1 %2
  • 这些命令的转换可以不使用Cygwin或者Git吗?

标签: linux windows batch-file command


【解决方案1】:

内部 cmd 命令不能使用别名。对于外部命令,您可以创建硬链接,但例如“移动”是一个内部命令。

【讨论】:

    猜你喜欢
    • 2011-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-15
    • 2017-04-23
    • 2016-02-17
    • 2014-06-07
    相关资源
    最近更新 更多