本文共 1016 字,大约阅读时间需要 3 分钟。
:显示文件第10行的内容,Easy
sed –help;查看具体使用规则:
sed -n ‘xp’ filename;显示文件X行命令:
sed -n ‘x,yp’ filename;显示文件X行到Y行的内容:
:匹配有效的电话号码形式,Medium
脱字符^匹配开头,美元字符$匹配结尾,|表示或
grep -P '^(\d{ 3}-|\(\d{ 3}\) )\d{ 3}-\d{ 4}$' file.txt
-n表示关闭默认输出,默认将自动打印所有行,这样就不会打印出不符合要求的数字串了。-r表示支持扩展正则+ ? () {} |。后面的正则表达式和上面都相同,就是后面多了一个p,在用sed时,p和-n合用,表示打印某一行,这样才能把符合要求的行打印出来:
sed -n -r '/^([0-9]{3}-|\([0-9]{3}\) )[0-9]{3}-[0-9]{4}$/p' file.txt
grep -P '^(\d{ 3}-|\(\d{ 3}\) )\d{ 3}-\d{ 4}$' file.txt
sort -k 2 按照第二个域进行排序
# Read from the file words.txt and output the word frequency list to stdout.awk '{ for(i=1;i<=NF;i++){a[$i]++;count++}} END{ for(j in a){print j,a[j]}}' words.txt | sort -k 2 -nr
# Read from the file file.txt and print its transposed content to stdout.awk ' { for(i=1;i<=NF;i++){ if(NR==1){ s[i]=$i; }else{ s[i]=s[i]" "$i; //这里$i可以理解为当前的单词 } } } END{ for(i=1;s[i]!="";i++) print s[i]; } ' file.txt