#!/bin/bash
read -p "please input dir and file:" log
#log=/tmp/recalc720.log
#输入日志路径
for i in `cat $log | sort -k 6 | awk '{print $6}' | uniq -c | sed '1d' | awk '{print $2}'`
do
num=`grep $i $log | grep -v 'to '$i | grep -v '[ ]$' | wc -l`
aa=$(awk "BEGIN{srand($RANDOM); print 1+int($num*rand())}")
bb=$aa
while [ "$aa" -eq "$bb" ]
do
bb=$(awk "BEGIN{srand($RANDOM); print 1+int($num*rand())}")
done
grep $i $log | grep -v 'to '$i | grep -v '[ ]$' | sed -n ''$aa'p'
grep $i $log | grep -v 'to '$i | grep -v '[ ]$' | sed -n ''$bb'p'
done以前专门写的给文件中的内容分类,并随机抽取
最新推荐文章于 2024-06-28 14:49:31 发布
本文介绍了一个使用Shell脚本从指定日志文件中随机抽取不重复行的方法。该脚本首先读取用户提供的日志文件路径,然后针对每个唯一标识符进行处理,通过随机数生成的方式选择两条不重复的日志条目进行输出。此方法适用于需要对日志文件进行随机抽样分析的场景。
2226

被折叠的 条评论
为什么被折叠?



