博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Leetcode Shell 编程
阅读量:4221 次
发布时间:2019-05-26

本文共 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

  • :词频统计排序,Medium

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
  • :文件转置,Medium
# 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
你可能感兴趣的文章
dev/kmem 和dev/mem的区别
查看>>
test-definitions/blob/master/auto-test/bigdata/bigdata.sh
查看>>
/test-definitions/blob/master/auto-test/blktrace/blktrace.sh
查看>>
test-definitions/blob/master/auto-test/blogbench/blogbench.sh
查看>>
test-definitions/blob/master/auto-test/boost/boost.sh
查看>>
Java多态性理解
查看>>
Intellij Idea 工具在java文件中怎么避免 import .*包,以及import包顺序的问题
查看>>
IDEA Properties中文unicode转码问题
查看>>
Oracle中Blob转换成Clob
查看>>
Linux如何查看so中函数名
查看>>
自动管理代码的android.mk
查看>>
cocos2dx 2.2.6编译记录(1)
查看>>
makefile学习网站
查看>>
C 编写lua模块(1)
查看>>
Lua教程:Lua调用C/C++函数(4)
查看>>
win下创建win32控制台工程,执行lua脚本
查看>>
cocos2dx android启动错误
查看>>
eclipse: android rename package name
查看>>
cocos2dx c++调用java思想
查看>>
cocos2dx lua Node节点 私有数据存取
查看>>