首页 > 数据库 >linux sort、uniq、tr、grep、eval、cut、sqlit、paste

linux sort、uniq、tr、grep、eval、cut、sqlit、paste

时间:2023-06-03 14:44:20浏览次数:29  
标签:sort 文件 cut grep .- 指定 分隔符 匹配 排序

目录

一、grep查找文件内容

二、sort排序

三、uniq统计压缩重复

四、tr替换压缩

 五、cut截断

六.sqlit拆分

七.paste合并

八.eval

 

 

 

 

 

 

 

 

一、grep(匹配文件内容)

      grep [选项]… 查找条件 目标文件

    -m  匹配次数

    -v   除什么以外

    -i  忽略大小写

    -n 显示匹配行号

    -c 统计行号

    -o 仅显示匹配到的字符串
    -q 静默模式,不输出任何信息
    -A 后几行

    -B # before, 前#行

    -C # context, 前后各#行
    -e 实现多个选项间的逻辑or关系,如:grep –e ‘cat ' -e ‘dog' file

    -w 匹配整个单词
    -E 使用ERE,相当于egrep,使用扩展正则
    -F 不支持正则表达式
    -f file 根据模式文件,处理两个文件相同内容 把第一个文件作为匹配条件
    -r   递归目录,但不处理软链接
    -R   递归目录,但处理软链接

  1.显示含a的两行在passwd中

   2.显示除a以外两行

   3.忽略大小写

   4.显示匹配内容的行号

   5.统计匹配到含a的行数

   6.仅显示匹配内容

   7.静默模式,无事发生

   8.A后几行显示

   9.B前几行显示

   10.-e多个匹配条件

   11.w匹配整个字符

   12.f两个文件相同地方

   13^$非空行

 

二、sort

  sort命令以行为单位对文件内容进行排序,也可以根据不同的数据类型来排序

  语法格式:

    sort 选项 参数

      -f:忽略大小写,默认会大写字母排在前面
      -b:忽略每行前面的空格
      -n:按照数字进行排序
      -r:反向排序
      -u:等同uniq,表示相同的数据仅显示一行,去重
      -t:指定字段分隔符,默认使用tab键分隔
      -k:指定排序字段
      -o <输出文件>:将排序后的结果转存至指定文件

  1.-f忽略大小写(以行为一个整体,以第一个字母先对比)

   2.-b忽略空格

 

 

   3.-n按数字大小排序

   4.-r反向排序

   5.u去重

   6.t 使用分隔符分隔

 

  7.k指定排序字段

  8.o排序后存放指定文件

 

三、uniq(去重)

    -c 统计连续重复的行的次数,并且合并重复的行

    -u 显示仅出现一次的行(包括不连续的重复行)
    -d 仅显示重复出现的行(必须是连续的重复行)

  1.-c统计重复行

   2.-u显示仅出现一次的行

   3.-d仅出现重复的行

 

四、tr

    常用于对来自标准输入的字符进行替换、压缩和删除

    -c:保留字符集1的字符,其他的字符(包括换行符\n)用字符集2替换
    -d:删除所有属于字符集1的字符
    -s:将重复出现的字符串压缩为一个字符串,用字符集2 替换 字符集1
    -t:字符集2 替换 字符集1,不加也行

  1.显示1的位置用2替换

   2.删除指定位置字符

   3.-s重复压缩,用位置2字符替换字符1

   将第三个位置替换为1并压缩重复字符

   4.t替换

 

五、cut 

  快速裁剪命令

    d 指定分隔符(默认分隔符为Tab)
    -f 按字段进行截取。指定第n个字段;
    -b 以字节为单位进行截取
    -c 以字符为单位进行截取
    –complement 排除所指定的字段
    –output-delimiter 更改输出内容的分隔符

1.d指定分割

  截取以:为分割2位置到3位置数据

 2.指定已":"作为分隔符,但是删除了第二个字段进行输出

   3.将分隔符转换为@,进行输出

 

六、split

  split命令用于在Linux下将大文件拆分为若干小文件。

  -l 指定行数
  -b 指定文件的大小

1.-l指定拆分为2行

 2.指定差分后文件名

 

 3.-b指定大小

   

 

七、paste

  按照字段来进行文件的合并

  -d 用于指定文件的分隔符(默认情况下为制表符"\n")

  -s 将列和行的内容进行互相交换

1.paste

  paste是左右合并,cat是上下合并

 2.-d指定连接处

 3.s行和列互换

 

八、eval

  命令字前加上eval,shell会在执行命令之前扫描它两次,

 

标签:sort,文件,cut,grep,.-,指定,分隔符,匹配,排序
From: https://www.cnblogs.com/zhende/p/17452727.html

相关文章

  • 首次进入Mysql修改密码报“The MySQL server is running with the --skip-grant-table
    第一次安装完mysql,修改默认密码的时候,报“TheMySQLserverisrunningwiththe--skip-grant-tablesoptionsoitcannotexecutethisstatement”。先刷新mysql然后再重新修改密码即可。mysql>ALTERUSER'root'@'localhost'IDENTIFIEDBY'123456';ERROR1290(H......
  • windows cmd 命令中使用grep 查找
    有时候我们想使用netstat命令查询具体哪个端口,但是windowsdos自带没有像linux哪样的grep,我们就需要使用第三方插件。下载地址:https://gnuwin32.sourceforge.net/packages/grep.htm 如果无法下载可使用百度网盘下载:链接:https://pan.baidu.com/s/1qpJZ362VBjgWfqJdL24LIA?p......
  • Template execution failed ReferenceError BASE_URL is not defined
    错误VueTemplateexecutionfailed:ReferenceError:BASE_URLisnotdefinedReferenceError:BASE_URLisnotdefined解决替换index.html替换前<linkrel="icon"href="<%=BASE_URL%>favicon.ico">替换后<linkrel="icon"......
  • MyBatis之执行器(Excutor)
    MyBatis之执行器(Executor)前面的文章已经介绍了MyBatis的基本使用流程,但我们不能仅仅局限于使用,而是应该去横向扩展,往更深的方向研究。今天就先讲解一下MyBatis中的执行器Executor。我们在CURD的时候,每次都会去获取一个新的SqlSession对象,可以看出来这个接口主要定义类关于CRUD......
  • 使用python操作hdfs,并grep想要的数据
    代码如下:importsubprocessfordayinrange(24,30):forhinrange(0,24):filename="tls-metadata-2018-10-%02d-%02d.txt"%(day,h)cmd="hdfsdfs-text/data/2018/10/%02d/%02d/*.snappy"%(day,h)print(c......
  • awk,sed,grep三剑客练习脚本
    利器|测试必会之Linux三剑客(grep/awk/sed)IT牛客 IT牛客 2023-05-0221:00 发表于河南收录于合集#linux13个#awk1个#sed1个原文:blog.csdn.net/weixin_43291944/article/details/100180464IT牛客专注于IT技术分享,原创技术和创新技术分享,I......
  • executemany例子
      #!/usr/bin/envpython#coding=utf-8importos,json,urllib,datetime,shutil,random,uuidfromrandomimportchoiceimportpymysqlimporttracebackimporttimegl_mysql_server="192.168.1.183"gl_user_name="root"gl_password=......
  • 结构体排序 sort排序
    首先,在学习c的时候,应该学了很多排序方法吧,类似于冒泡排序呀,选择排序,插入排序,快排呀等等,但是,在c++中,有一个很好的排序就是sort排序,在stl里面,sort排序可以说,无论是时间复杂度还是空间复杂度,都是很优化的,这就足以见证sort排序的强大了,也说明sort排序的重要性。在C++中使用sort()函数......
  • qsort排序的用法
    //voidBubble_sort(intarr[],intsz)//{// inti=0;// for(i=0;i<sz-1;i++)//确定排序执行的次数// {// intj=0;// for(j=0;j<sz-1-i;j++)//确定每次排序两组元素的对比次数// {// inttmp=0;// if(arr[j]>arr[j+1])// {// tmp=......
  • leetcode 378. Kth Smallest Element in a Sorted Matrix
    Givenanxnmatrixwhereeachoftherowsandcolumnsaresortedinascendingorder,findthekthsmallestelementinthematrix.Notethatitisthekthsmallestelementinthesortedorder,notthekthdistinctelement.Example:matrix=[[1,5,9......