2017-06-29 70 views
1

我处理的UNIX xargs的猫,我是不是真的到UNIX和此刻的我有这样的cat命令:xargs的猫与条件语句

ls *ex_vs*ex.txt | xargs cat > ex.txt 

    ls *en_vs*en.txt | xargs cat > en.txt 

什么,我想现在要做的是让具有此含义的语句:

ls *ex_vs*en.txt **OR** *en_vs*ex.txt | xargs cat > en_ex.txt 

所以我的问题基本上是如何把一个条件语句(或)为catting文件一起。 任何建议将非常感激。 最佳 阿尔弗雷多

+0

目前尚不清楚为什么你认为你需要'xargs'。通常,您可以使用'cat * en_vs * en.txt> en.txt'。并且您对**或**的要求也不清楚。为什么不只是'cat * en.txt> en_all.txt; cat * ex.txt> ex_all.txt; cat> en_all.txt ex_all.txt> all.txt'。如果没有匹配'* ex.txt'或'* en.txt'的文件,它将是无操作的,并且处理将继续。最终的文件将会有正确的结果。祝你好运。 – shellter

+0

谢谢,你是对的,作品也是这样。 –

回答

0

LS可以采取倍数参数:

$ ls --help 
Usage: ls [OPTION]... [FILE]... 

所以,你可以在LS之后添加这两种文件选择:

ls *ex_vs*en.txt *en_vs*ex.txt | xargs cat > en_ex.txt 

您还可以使用:

cat *ex_vs*en.txt *en_vs*ex.txt > en_ex.txt 
+0

非常感谢,它完美的作品! –