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) ...
随机推荐
- 给每个li延时添加样式动画效果(setInterval,clearInterval)
btnsAnime($('ul li')) function btnsAnime(pagesl) { var that = this $(pagesl).hide() let i = 0; funct ...
- python3.7安装和pycharm安装教程. 以及pycharm的破解教程
前言: 供对python初学者查阅, pycharm破解教程参阅了: https://blog.csdn.net/u014044812/article/details/78727496 1. 安装py ...
- 20分钟掌握Android Gradle
目前国内对Android领域的探索已经越来越深,不少技术领域如插件化.热修复.构建系统等都对Gradle有迫切的需求,不懂Gradle将无法完成上述事情.所以Gradle必须要学习. Gradle 里 ...
- Java面板Panel的使用,监听窗口关闭事件
面板Panel的使用 待解决问题: 1.设计模式:适配器模式 2.frame.setLayout(null); package GUI; import javax.swing.*; import ja ...
- JAVA基础语法:java编程规范和常用数据类型(转载)
JAVA基础语法:java编程规范和常用数据类型 摘要 本文主要介绍了最基本的java程序规则,和常用数据类型,其中侧重说了数组的一些操作. 面向java编程 java是纯面向对象语言,所有的程序都要 ...
- Git-01-安装
安装 在centos6.8上安装Git: yum install git -y windows上安装git: 安装的时候,默认选项即可 centos和windows安装git完成以后的设置: git ...
- spring-security oauth2.0简单集成
github地址:https://github.com/intfish123/oauth.git 需要2个服务,一个认证授权服务,一个资源服务 认证授权服务为客户端颁发令牌,资源服务用于客户端获取用户 ...
- SpringBoot - 集成Auth0 JWT
目录 前言 session认证与Token认证 session认证 Token认证 JWT简介 JWT定义 JWT数据结构 JWT的类库 具体实现 JWT配置 JWT工具类 测试接口 前言 说说JWT ...
- CGO入门和OCR文字识别(非第三方API,有源码,效果好)实战
这是我参与8月更文挑战的第5天,活动详情查看:8月更文挑战 系列文章见: [第四天] GDB调试指南:C++中如何调试生产环境的程序? [第三天] IM敏感词算法原理和实现 [第二天] 现代IM架构研 ...
- NOIP 模拟 $11\;\rm math$
题解 签到题(然而还是不会) 考虑所有可能的值一定是 \(\in [0,k)\),且一定为 \(gcd(a_1,a_2,...a_n,k)\) 的倍数. 证明: 设 \(tmp=b_1a_1+b_2a ...

