管道經常用于拼接命令,通過管道可以執行一些復雜的數據處理操作。以下為在shell中使用管道處理數據的的幾個實例
示例1:生成一個8位的隨機密碼
tr -dc A-Za-z0-9_ </dev/urandom | head -c 8 | xargs
示例2:查看系統中所有的用戶名稱,并按字母排序
awk -F: '{print $1}' /etc/passwd | sort
示例3:列出當前用戶使用最多的5個命令(print的列數根據實際情況而定)
history | awk '{print $2}' | sort | uniq -u | sort -rn | head -5
示例4:查看系統中有哪些用戶的登陸shell時/bin/bash
cat /etc/passwd | grep "/bin/bash" | cut -d: -f1,6 #cut -d: -f1,6 表示以:為分隔符顯示第1和第6列的內容-d指定分隔符,-f指定列
示例5:查看當前目錄的子目錄個數
ls -l | cut -c 1 | grep "d" | wc -l#ls -l 長格式列出當前目錄的所有內容,每行的第一個字符表示文件的類#cut -c 1 截取每行的第一個字符#grep "d" 獲取文件類型是目錄的行#wc -l 統計grep命令輸出的行數,即子目錄個數
示例6:合并兩個文件的內容
cat 1.txt | paste -d: 2.txt -#paste -d: 2.txt - 表示以:為分割符合并兩個文件,合并時2.txt文件的內容在前 -代表1.txt文件
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對武林網的支持。如果你想了解更多相關內容請查看下面相關鏈接
|
新聞熱點
疑難解答