當前位置:成語大全網 - 新華字典 - 壹段統計文本單詞個數的shell代碼,實在是看不懂,誰能幫著解釋下~

壹段統計文本單詞個數的shell代碼,實在是看不懂,誰能幫著解釋下~

#!/bin/bash

if?[?$#?-ne?2?-a?$#?-ne?1?];then?#程序運行時若輸入參數少於兩個,則提示錯誤

echo?"usage:?'basename?$0'?[n]?Input_File" #-ne表示不等於,-a表示與運算

echo #用法:默認輸入壹個參數代表文件名,輸入兩

exit? #個參數第壹個代表顯示行數。

fi

if?[?$#?-eq?1?] #如果輸入壹個參數,則默認顯示行數為10行。

then

I_TOP=10

I_FILE=$1

fi

if?[?$#?-eq?2?]#如果輸入兩個參數,則第壹個為顯示行數,第二個為要處理的文件。

then?

I_TOP=$1

I_FILE=$2

fi

tr?-sc?"[A-Z][a-z]"?"[\012*]"?<?$I_FILE?|?\#tr命令妳可以自己查找壹下幫助,大意是除了大小寫字母之外的字符都轉化為回車,<是輸出重定向,|是管道符,\是續行符

tr?"[A-Z]"?"[a-z]?"?|?\ #大寫轉化成小寫

sort?|?\ #重新排序

uniq?-c?|?\ ? #uniq?的用法

sort?-k1?-n?-r?|?\ #sort 的用法

head?-$I_TOP?|?nl? #輸出