首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >bat和sh在命令行参数语法上有什么区别?

bat和sh在命令行参数语法上有什么区别?
EN

Stack Overflow用户
提问于 2016-07-25 10:59:28
回答 1查看 303关注 0票数 2

我正在尝试在一个shell脚本(实际上是一个git钩子)中运行机器人复制 (Windows健壮副本)。在我添加选项/XO之前,它可以正常工作。

所以命令:

代码语言:javascript
复制
robocopy source destination a.txt

在.bat和.sh文件中正确工作。

但是命令

代码语言:javascript
复制
robocopy source destination a.txt /XO

在.sh中失败,错误如下:

错误:无效的参数#3:"C:/Program /Git/XO“

而它在bat文件中工作正常。

因此,问题在于将/XO选项传递给机器人复制;更具体地说,shell脚本将参数传递给机器人复制的方式。

请提出解决办法。

EN

回答 1

Stack Overflow用户

发布于 2018-02-06 08:02:12

如果您为此使用Git Bash,它会智能地将Unix样式的选项转换为Windows风格的选项。因此,例如,命令:

代码语言:javascript
复制
robocopy source destination a.txt -xo

将显示它使用的是/xo选项:

代码语言:javascript
复制
-------------------------------------------------------------------------------
   ROBOCOPY     ::     Robust File Copy for Windows
-------------------------------------------------------------------------------

  Started : Tue Feb 06 15:58:53 2018

   Source : c:\gitbashdir\source
     Dest : c:\gitbashdir\destination\

    Files : a.txt

  Options : /COPY:DAT /XO /R:1000000 /W:30

   : blah blah blah :

   Ended : Tue Feb 06 15:58:53 2018
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38565959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档