Linux單行腳本命令小集
本文將最近使用過的一些比較有趣而又威力強大的單行
命令整理了一下,節省篇幅不舉例子。今後發現新的持續更新。
www.2cto.com
#導出幫助文檔
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
www.2cto.com
#查看僅在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