我有两个文件,其中一些行已更改顺序.我希望能够比较这些.
一个网站建议看起来像这样:
diff <(sort text2) <(sort text1)
但这会产生错误:缺少重定向的名称.
我正在使用tcsh.上面的命令是针对不同的shell吗?
有没有更好的办法?
此重定向语法是特定于bash的.因此它在tcsh中不起作用.
您可以调用bash并直接指定命令:
bash -c 'diff <(sort text2) <(sort text1)'
这是一个功能:
function diffs() { diff "${@:3}" <(sort "$1") <(sort "$2") }
像这样称呼它:
diffs file1 file2 [other diff args, e.g. -y]
据推测,如果有必要,你可以根据David Schmitt的回答改变它.
有没有更好的办法?
就在这里。
使用comm
工具:
用法:comm [-123i] file1 file2