sort-uniq-tr-cut命令 对文件处理相关操作
目录:
一、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命令 对文件处理相关操作的更多相关文章
- linux awk,sort,uniq,wc,cut命令详解
1.awk awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息 $ 表示当前行 $ 表示第一列 NF 表示一共有多少列 $NF 表示最 ...
- 转-Shell笔记——命令:Sort,uniq,join,cut,paste,split
转自:http://blog.csdn.net/wklken/article/details/6562098 Sort,uniq,join,cut,paste,split 命令—— Sort Sort ...
- java文件夹相关操作 演示样例代码
java文件夹相关操作 演示样例代码 package org.rui.io; import java.io.File; import java.io.FilenameFilter; import ja ...
- Oracle 参数文件及相关操作介绍
Oracle 参数文件及相关操作介绍 by:授客 QQ:1033553122 1.服务器参数文件 服务器参数文件是一个二进制文件,作为初始化参数的存储仓库.实例运行时,可用ALTER SYSTEM来改 ...
- 关于C#资源文件的相关操作
关于资源文件的相关操作. //1.比较常见的有获取资源文件对应的文件流,然后转换到相对应的文件 //比较典型的做法是通过代码程序集加载指定资源 //如下通过Assembly的静态方法GetExecut ...
- 用 JSP 实现对文件的相关操作
前段时间一直忙着作业,实验,动手的时间真是少之又少,今天终于可以继续和大家分享关于 JSP 的学习心得. 简单总结一下吧: JSP 理论性很强,感觉就是纯语法. 我更偏向于实际编写代码,这样更容易理解 ...
- plist文件的相关操作
本文概要 1.plist文件的简介 2.在Xcode中创建plist文件 3.在Xcode中将plist文件转换成数组或者字典对象 4.将数组或者字典对象转换成plist文件并且存储 详细介绍 1.p ...
- linux基础——关于chmod用户权限和文件的相关操作
第一部分:1) 新建用户natasha,uid为1007,gid为555,备注信息为“master” 操作:useradd natasha新建natasha:修改uid是,usermod -u 100 ...
- Java IO_001.File类--文件或文件夹相关操作
Java IO之File对象常用操作 File类:用于文件或文件夹或网址相关联的操作.可以关联或不关联文件(即关联不存在的文件).构造函数有: public File(String pathname) ...
随机推荐
- squid异常停止的排查步骤
今天重启squid的时候发现,squid启动后,status 一会就stop了 whoami@blackman:~/script/AutoProxy-master/main/server$ sudo ...
- Javac 编译器
编译过程 Javac 编译过程大致可以分为1个准备过程和3个处理过程: 准备过程:初始化插入式注解处理器. 解析与填充符号表过程,包括: 词法.语法分析,将源代码的字符流转变为标记集合,构造出抽象语法 ...
- Git点赞82K!字节跳动保姆级Android学习指南,干货满满
这是一份全面详细的<Android学习指南>,如果你是新手,那么下面的内容可以帮助你找到学习的线路:如果你是老手,这篇文章列出的内容也可以帮助你查漏补缺.如果各位有什么其他的建议,欢迎留言 ...
- Golang语言系列-03-流程控制语句
Go语言流程控制语句 Go语言中最常用的流程控制语句有 if 和 for ,没有像Python中的while语句.另外,Go语言还有switch和goto语句,不过这两个主要是用来简化代码的,属于扩展 ...
- 值得收藏 | 深度剖析 TensorCore 卷积算子实现原理
作者:章晓 | 旷视 MegEngine 架构师 一.前言 2020 年 5 月 Nvidia 发布了新一代的 GPU 架构安培(Ampere).其中和深度学习关系最密切的莫过于性能强劲的第三代的 T ...
- 线程 Thread类 GIL锁 信号量 Event事件
线程的开启方法 进程是操作系统调度的最小单位,一个进程最少有一个主线程,而一个进程中可以开启多个线程 from threading import Thread def task(): print('A ...
- 被MySQL慢日志查询搞废了?3分钟教你快速定位慢查询问题!
一条慢查询会造成什么后果?刚开始使用MySQL的开发.初级DBA 以为就是简单的查询变慢些,体验稍微有一丢丢影响,殊不知,慢查询的破坏力远不止如此.业务高峰期,这头SQL还没处理完,大量新的查询请求堆 ...
- ASP.NET Core:ASP.NET Core程序使用Docker部署
一.前言 这篇文章介绍如何将一个ASP.NET Core应用程序在Docker中进行部署.开发工具使用的是Visual Studio 2019和VS Code. 二.使用Docker部署 我们选择新建 ...
- sql查询第10条到第20条数据
select top(10) * from T1 where Id >= (select MAX(Id) from (select top(20) * from T1 order by Id) ...
- 【C#】Enum,Int,String的互相转换 枚举转换
Enum为枚举提供基类,其基础类型可以是除 Char 外的任何整型.如果没有显式声明基础类型,则使用 Int32.编程语言通常提供语法来声明由一组已命名的常数和它们的值组成的枚举. 注意:枚举类型的基 ...

