目录:

一、sort命令

二、uniq命令

三、tr命令

四、cut命令

五、eval命令

一、sort命令

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

语法格式

sort [选项] 参数

cat file | sort 选项

常用选项

-f: 忽略大小写,会将小写字母都转换为大写字母来进行比较

-b: 忽略每行前面的空格

-n: 按照数字进行排序

-r: 反向排序

-u: 等同于uniq,表示相同的数据仅显示一行

-t: 指定字段分隔符,默认使用[Tab]键分隔

-k: 指定排序字段

-o<输出文件>: 将排序后的结果转存至指定文件
sort -n testfile2 

sort -t ':' -k 3 -n /etc/passwd

du -a | sort -nr -o du.txt

二、uniq命令

用于报告或者忽略文件中连续的重复行,常与sort命令结合使用

语法格式

uniq [选项] 参数
cat file | uniq 选项

常用选项

-C:  进行计数,并删除文件中重复出现的行

-d:  仅显示连续的重复行

-U:  仅显示出现一次的行
uniq testfile3
sort -n testfile3 | unig -C


三、tr命令

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

语法格式

tr [选项] [参数]

常用选项

-C: 保留字符集1的字符,其他的字符( 包括换行符\n)用字符集2替换

-d: 删除所有属于字符集1的字符

-s: 将重复出现的字符串压缩为一个字符串:用字符集2替换字符集1

-t: 字符集2替换字符集1,不加选项同结果

参数:

  • 字符集1:指定要转换或删除的原字符集。当执行转换操作时,必须使用参数“字符集2”指定转换的目标字符集。但执行删除操作时,不需要参数“字符集2”
  • 字符集2:指定要转换成的目标字符集
echo "abc" | tr 'a-z' 'A-Z'
echo -e "abc\ncabcdab" | tr -c "ab\n" "0"
echo -e " abc\ncabcdab"| tr -c "ab" "O"
echo 'hello world' | tr -d 'od'
echo "thissss is a text linnnnnnne." | tr -s 'sn'

删除空行

echo -e "aa\n\n\n\n\nbb" | tr -s "\n"
cat testfile5 | tr -s "\n"

把路径变量中的冒号 “:”,替换成换行符 “\n”

echo $PATH | tr -s ":" "\n"
echo -e "aa\n\n\n\n\nbb" | tr -s "\n" ":"

1 echo ${array[*]} | tr ' ' '\n'| sort-n > file
2
3 a=0
4 for i in $(cat file)
5 do
6 array[$a]=$i
7 let a++
8 #array+=($i)
9 done

四、cut 命令

显示行中的指定部分,删除文件中指定字段

语法格式

cut 选项 参数
cat file | cut 选项

常用选项

-f: 通过指定哪一个字段进行提取。cut命令使用“TAB"作为默认的字段分隔符

-d: “TAB”是默认的分隔符,使用此选项可以更改为其他的分隔符

--complement :此选项用于排除所指定的字段

--output-delimiter :更改输出内容的分隔符

五、eval命令

前加上eval时,shell就会在执行命令之前扫描它两次。eval命令将首先会先扫描命令行进行所有的置换,然后再执行该命令。该命令适用于那些一次扫描无法实现其功能的变量。该命令对变量进行两次扫描。

sort-uniq-tr-cut命令 对文件处理相关操作的更多相关文章

  1. linux awk,sort,uniq,wc,cut命令详解

    1.awk awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息 $ 表示当前行 $ 表示第一列 NF 表示一共有多少列 $NF 表示最 ...

  2. 转-Shell笔记——命令:Sort,uniq,join,cut,paste,split

    转自:http://blog.csdn.net/wklken/article/details/6562098 Sort,uniq,join,cut,paste,split 命令—— Sort Sort ...

  3. java文件夹相关操作 演示样例代码

    java文件夹相关操作 演示样例代码 package org.rui.io; import java.io.File; import java.io.FilenameFilter; import ja ...

  4. Oracle 参数文件及相关操作介绍

    Oracle 参数文件及相关操作介绍 by:授客 QQ:1033553122 1.服务器参数文件 服务器参数文件是一个二进制文件,作为初始化参数的存储仓库.实例运行时,可用ALTER SYSTEM来改 ...

  5. 关于C#资源文件的相关操作

    关于资源文件的相关操作. //1.比较常见的有获取资源文件对应的文件流,然后转换到相对应的文件 //比较典型的做法是通过代码程序集加载指定资源 //如下通过Assembly的静态方法GetExecut ...

  6. 用 JSP 实现对文件的相关操作

    前段时间一直忙着作业,实验,动手的时间真是少之又少,今天终于可以继续和大家分享关于 JSP 的学习心得. 简单总结一下吧: JSP 理论性很强,感觉就是纯语法. 我更偏向于实际编写代码,这样更容易理解 ...

  7. plist文件的相关操作

    本文概要 1.plist文件的简介 2.在Xcode中创建plist文件 3.在Xcode中将plist文件转换成数组或者字典对象 4.将数组或者字典对象转换成plist文件并且存储 详细介绍 1.p ...

  8. linux基础——关于chmod用户权限和文件的相关操作

    第一部分:1) 新建用户natasha,uid为1007,gid为555,备注信息为“master” 操作:useradd natasha新建natasha:修改uid是,usermod -u 100 ...

  9. Java IO_001.File类--文件或文件夹相关操作

    Java IO之File对象常用操作 File类:用于文件或文件夹或网址相关联的操作.可以关联或不关联文件(即关联不存在的文件).构造函数有: public File(String pathname) ...

随机推荐

  1. 工具idea 基于maven 创建springMVC项目

    SpringMVC Spring MVC是Spring提供的一个强大而灵活的web框架.借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测试更加简单.这些控制器一般不 ...

  2. preg_replace函数/e 模式下的代码执行+一道例题

    目录 例一 例二 补充 看一道ctf题-----[BJDCTF2020]ZJCTF,不过如此 参考链接 例一 源码: <?php preg_replace('/(.*)/ei', 'strtol ...

  3. 2020互联网寒冬之下,作为一个Android老码农,是如何进入腾讯的?

    由于众所周知的原因,原生Android开发如今已经日渐凋敝,作为一个Android程序员,不仅要会Java,Kotlin,JavaScript,Css,Html,还要会Flutter,C++,FFmp ...

  4. Netty:简单使用

    Netty是什么东西 Netty是一个封装很好的异步事件驱动框架,让我们快速的部署服务端和客户端的网络应用,进行异步IO通信. 1.什么是IO通信IO就是input 和 output,是一种在两台主机 ...

  5. noip模拟35[第一次4题·裂了]

    noip模拟35 solutions 这是我第一次这么正式的考四个题,因为这四个题都出自同一个出题人,并不是拼盘拼出来的. 但是考得非常的不好,因为题非常难而且一直想睡觉.. 有好多我根本就不会的算法 ...

  6. 作为有经验的程序员如果不懂Lambda表达式就说不过去了吧,建议收藏!!!

      最近刚好有空给大家整理下JDK8的特性,这个在实际开发中的作用也是越来越重了,本文重点讲解下Lambda表达式 Lambda表达式   Lambda 表达式,也可称为闭包,它是推动 Java 8 ...

  7. Java之Cookie与Session

    Cookie.Session Cookie:服务端生成Cookie发给客户端用于认证 Session:服务端进行进行登记,每人有不同的Session session与cookie的区别 Cookie: ...

  8. deepin下启动自己的springcloud服务报错

    java.nio.file.AccessDeniedException: /home/msan/logs/csp/sentinel-record.log.2021-01-04.0.2.lck at s ...

  9. NOIP 模拟 $21\; \rm Game$

    题解 考试的时候遇到了这个题,没多想,直接打了优先队列,但没想到分差竟然不是绝对值,自闭了. 正解: 值域很小,所以我们开个桶,维护当前最大值. 如果新加入的值大于最大值,那么它肯定直接被下一个人选走 ...

  10. Redis开发使用指南

    Redis Redis是一个开源(BSD许可)的内存数据结构存储,用作数据库.缓存和消息代理.Redis提供数据结构,如strings, hashes, lists, sets, sorted set ...