find
-name *.c | xargs wc -l |sort -r
。结果按照反序排列find -name
*.c | xargs wc -l |sort -k2
结果按照文件名排列*.c
更改为*.cc
即可。如果c++使用cpp后缀名,改为*.cpp
find
[path...] [expression]
-name pattern
文件名符合shell正则式-path pattern
文件路径名符合shell正则式-exec order
{}
执行命令,若返回值为0则真find
-name *.c
搜索后缀名为c的文件find
. -exec sleep {1}
每隔1s显示一个文件wc
[-lwc] filename
wc -l
file1 file2
统计两文件的行数-0
选项可以保证参数列中含有空格、换行符等时分割正确find
/tmp -name core | xargs -0 /bin/rm -f
。把/tmp
文件夹下所有名称为core的文件传递给rm命令,强制删除。-0
选项可以保证正确处理文件名中含有换行或空格的情况。-r
选项可以修改为降序排列-n
选项按照字符表示的数字的值来排序,如1
2 10 20
没有开启此选项排序结果为1 10 2 20
-f
忽略大小写-t
设置列之间的分隔符,-k
指定按照第几列排序sort
-n -f -k 2 test.txt
。将test.txt中的各行按照第二列排序,忽略大小写>
count.txt
即可<
,可以把文件中的内容作为程序的输入。例如测试代码时使用:./a.out
< test.in
,test.in文件里面是程序的测试输入>
。
ls 1>/dev/null
2>/dev/null
不显示输出和错误输出。1、2与>之间不能有空格ls 2>
&1> t.txt
将错误输出重定向到标准输出,而此时标准输出还未重定向,因此标准输出内容将写入t.txt,而错误输出仍留在屏幕上ls 1>
t.txt 2> &1
将标准输出和错误输出都写入t.txt|
表示ls
命令就不符合要求
原文:http://blog.csdn.net/caozhk/article/details/38345467