日期:2014-05-16  浏览次数:20651 次

Linux实用单行命令小集

本文将最近使用过的一些比较有趣而又威力强大的单行命令整理了一下,数量暂时不多。今后发现新的持续更新。

??

#导出帮助文档
man ls | col -b > ls.man.txt

?

?#查看file1和file2的并集
cat file1 file2 | sort | uniq

?

#查看file1和file2的交集
cat file1 file2 | sort | uniq -d


comm -12 11.dat 22.dat

?

#查看file1和file2的只有单边存在的集合

cat file1 file2 | sort | uniq -u

?

#查看仅在file1中存在的集合

comm -23 file1 file2

?

#查看仅在file2中存在的集合
comm -13 file1 file2

?

#显示当前目录前10个占用空间最大的文件或目录:
du -sh * | sort -nr | head

?

#找出当前目录下(包括子目录中)最大10个文件
find . -type f | xargs ls -l | awk '{print $5 " " $9}' | sort -nr | head

?

#找出当前目录下(包括子目录中)最新更新的10个文件
find . -type f | xargs ls -lt | head

?

#抽出表达式中所有的变量(去除重复)
echo '(int1 - 2)/100*int1 + int2 * int3' | \
tr '\(\)\+\-\*\/' ' ' | \???????? #删除符号:()+-*/
sed -re 's/\b[0-9]+\b/ /g' | \??? #删除数字(变量中数字除外)
tr ' ' '\n' | \
sed '/^$/d' | \
sort -u

?

#统计C语系程序中实际行数(注释行,空行除外)
cat? xxx.c | \
sed '/^[ \t]*\/\*/,/.*\*\//d' | \? #删除/* */所在行
sed '/^[ \t]*\/\//d' | \?????????? #删除//为首的行
sed '/^[ \t]*$/d' | \????????????? #删除空行
wc -l