首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从命令行启动Beyond Compare

从命令行启动Beyond Compare
EN

Stack Overflow用户
提问于 2010-05-06 21:37:52
回答 3查看 6.1K关注 0票数 2

我已经安装了Beyond Compare 3;

代码语言:javascript
复制
"C:\Program Files\Beyond Compare 3\BCompare.exe"

和Cygwin;

代码语言:javascript
复制
"C:\Cygwin\bin\bash.exe"

我想要的是能够使用这样的命令;

代码语言:javascript
复制
diff <file1> <file2>

进入Cygwin shell,并让shell派生一个进程,在beyond compare中打开这两个文件。

我看了一下Beyond Compare Support Page,但恐怕它对我来说太简短了。我尝试逐字复制文本(除了路径到可执行文件),但无济于事;

代码语言:javascript
复制
Instead of using a batch file, create a file named "bc.sh" with the following line:
"$(cygpath 'C:\Progra~1\Beyond~1\bcomp.exe')" `cygpath -w "$6"` `cygpath -w "$7"` /title1="$3" /title2="$5" /readonly 

我是不是应该取代cygpath?当我在命令行中输入脚本的名称时,我得到一个'Command not line‘错误。

代码语言:javascript
复制
gavina@whwgavina1 /cygdrive
$ "C:\Documents and Settings\gavina\Desktop\bc.sh"
bash: C:\Documents and Settings\gavina\Desktop\bc.sh: command not found

有没有人有我所描述的无与伦比的工作?这在Windows环境中是可能的吗?

提前感谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-05-06 22:15:45

在Cygwin内部,文件系统更像是unix。cygpath组件之所以存在,是因为驱动器的根出现在路径中的不同位置。"C:\“对Cygwin没有任何意义,它认为”/“是根,驱动器必须从那里开始,因此cygpath扩展。另外,尝试使用8.3表单,如引用的页面中的:

cygpath "$(cygpath 'C:\Progra~1\Beyond~1\bcomp.exe')"

票数 0
EN

Stack Overflow用户

发布于 2010-05-06 22:18:23

@Romain Hippeau谢谢,我有点傻。

要在Cygwin中运行shell脚本,必须使其可执行。

代码语言:javascript
复制
chmod 755 bc.sh 

然后运行脚本使用;

代码语言:javascript
复制
./bc.sh

脚本在当前目录中的位置。

票数 0
EN

Stack Overflow用户

发布于 2011-08-19 04:50:43

将此函数添加到~/.bashrc文件中。

代码语言:javascript
复制
bc() {
  "/cygdrive/c/Program Files/Beyond Compare 3/BCompare.exe" $1 $2 -fv "Text Compare"
}

然后,您只需在命令行上编写bc file1.txt file2.txt,并使用Beyond Compare获得一个很好的文本比较。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2781561

复制
相关文章

相似问题

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