2013-10-23 95 views
2

我试图将我的输出与我的导师的输出进行比较,他给了我们这套命令,但是对于倒数第二个命令,它抱怨在'output.diff'中有一个额外的操作数。这是为什么抱怨有一个额外的操作数?

$ gcc -ansi -Wall -Werror -lm -o myprint-badges print-badges32.o grove.c badges.c 

$./myprint-badges > my.out 
$./print-badges32 > alex.out 
$ diff my.out alex.out output.diff 
$ more output.diff 

为什么第二个到最后一个命令不起作用?

+2

你应当已经阅读差异的输出的第二行:“DIFF:尝试‘DIFF --help’以获取更多信息。” – kay

回答

3

您需要将输出重定向(你错过了>):

diff my.out alex.out > output.diff 

代替上述的,你可能只是管道成more

diff my.out alex.out | more 
+1

为什么不'少'? (虽然/提供额外信息的原因+1) – kay

+1

当然,“少”是好的。但最初的问题使用'更多'。 – paddy

2

你忘了重定向diff输出:

diff my.out alex.out > output.diff 
0

因为“差异”逐行比较两个文件。你给三个文件来比较错误。

http://unixhelp.ed.ac.uk/CGI/man-cgi?diff

我认为正确的命令语法将

$ diff my.out alex.out > output.diff 
+0

'>>'附加到一个文件。我认为这在OP的情况下并不合适。 – kay

+0

我不认为OP是想要*追加*结果。 – paddy

+0

雅吧。编辑答案。 – User42

0

我正在得到类似的错误在Windows上,当我运行bash的GIT下面的命令。

diff -qrbB C:/Users/testuser/Desktop/Data bkp/files C:/xampp/htdocs/Data/files 

,因为在数据和BKP之间为Data bkp

空格删除此空间之后,它工作得很好。

另一种方法是用一个反斜杠

diff -qrbB C:/Users/testuser/Desktop/Data\ bkp/files C:/xampp/htdocs/Data/files 
相关问题