1、输出第十行文本的内容
sed -n '10p' jmeter.log
2、查找电话号码 (xxx) xxx-xxxx 或 xxx-xxx-xxxx。(x 表示一个数字)
grep -E "^\([0-9]{3}) [0-9]{3}-[0-9]{4}$|^[0-9]{3}-[0-9]{3}-[0-9]{4}$" file.txt
3、统计文本字符数量
方法一
grep -E "\b[[:alpha:]]+\b" a.txt -o | sort -r | uniq -c| sort -rn
方法二
cat words.txt | tr -s ' ' '\n'|sort|uniq -c |sort -r|awk '{print $2" "$1}'
cat words.txt | xargs -n1 | sort | uniq -c
cat ——浏览文件
tr -s ——替换字符串(空格换为换行)保证了一行一个单词
sort ——默认ASCII值排序,排序号后还会有重复
uniq —— 去重,-c再输出重复次数。结果就是 ”4 abc“ abc出现了4次
sort
-r —— 反向排序,也就是从大到小。得到按频率高低的结果;
-n 按照数值比较排序
awk ——格式化输出,规定输出是先字符串再重复次数,所以先$2再$1,中间空格分隔
4、文件列转为行
# 1.获取列数
col=$(wc file.txt | awk '{print $2 / $1}')
# 2. 按列打印
for i in `seq 1 $col`
do
awk -v col="$i" '{print $col}' file.txt |xargs
done
drop-of-water
网友评论