shell 隨機(jī)從文件中抽取若干行的實(shí)現(xiàn)方法
shuf -n5 main.txt
sort -R main.txt | head -5
awk -vN=5 -vC="`wc -l file`" 'BEGIN{srand();while(n<N){i=int(rand()*C+1);if(!(i in a)){a[i]++;n++}}}NR in a' file
while read line;do echo "$line $RANDOM";done < main.txt | sort -k2,2n| awk 'NR<=5{print $1}'
shuf 命令的選項(xiàng):
-e, --echo :將每個(gè)參數(shù)視為輸入行
-i, --input-range=LO-HI :將LO 到HI 的每個(gè)數(shù)字視為輸入行
-n, --head-count=行數(shù) : 最多輸出指定的行數(shù)
-o, --output=文件 :將結(jié)果輸出到指定文件而非標(biāo)準(zhǔn)輸出
--random-source=文件 :從指定文件獲得隨機(jī)比特
-z, --zero-terminated :以0 結(jié)束行而非新行
--help :顯示此幫助信息并退出
--version :顯示版本信息并退出
示例:

相關(guān)文章
shell結(jié)構(gòu)化命令if-then-else語(yǔ)句
在Shell腳本編程中,if-then-else語(yǔ)句提供了基于條件執(zhí)行不同命令的能力,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-11-11
監(jiān)視磁盤使用情況的Shell腳本(本地+遠(yuǎn)程)
任何一個(gè)分區(qū)使用到90%就發(fā)送一個(gè)郵件給指定的收件人,到95%就在郵件主題出警告(warning),說(shuō)明發(fā)送郵件程序EMAIL2013-01-01
Linux使用curl訪問(wèn)網(wǎng)頁(yè)和wget下載文件
這篇文章介紹了Linux使用curl命令訪問(wèn)網(wǎng)頁(yè)和wget下載文件的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06
Linux使用pidof命令來(lái)快速查找進(jìn)程id
pidof 是一個(gè)簡(jiǎn)單而強(qiáng)大的命令行工具,廣泛應(yīng)用于進(jìn)程管理和腳本編程中,理解如何有效地使用它可以大大提高你的工作效率,本文給大家介紹了Linux使用pidof命令來(lái)快速查找進(jìn)程id的方法,需要的朋友可以參考下2025-03-03

