目录:

一、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. 给每个li延时添加样式动画效果(setInterval,clearInterval)

    btnsAnime($('ul li')) function btnsAnime(pagesl) { var that = this $(pagesl).hide() let i = 0; funct ...

  2. python3.7安装和pycharm安装教程. 以及pycharm的破解教程

    前言: 供对python初学者查阅, pycharm破解教程参阅了: https://blog.csdn.net/u014044812/article/details/78727496 1. 安装py ...

  3. 20分钟掌握Android Gradle

    目前国内对Android领域的探索已经越来越深,不少技术领域如插件化.热修复.构建系统等都对Gradle有迫切的需求,不懂Gradle将无法完成上述事情.所以Gradle必须要学习. Gradle 里 ...

  4. Java面板Panel的使用,监听窗口关闭事件

    面板Panel的使用 待解决问题: 1.设计模式:适配器模式 2.frame.setLayout(null); package GUI; import javax.swing.*; import ja ...

  5. JAVA基础语法:java编程规范和常用数据类型(转载)

    JAVA基础语法:java编程规范和常用数据类型 摘要 本文主要介绍了最基本的java程序规则,和常用数据类型,其中侧重说了数组的一些操作. 面向java编程 java是纯面向对象语言,所有的程序都要 ...

  6. Git-01-安装

    安装 在centos6.8上安装Git: yum install git -y windows上安装git: 安装的时候,默认选项即可 centos和windows安装git完成以后的设置: git ...

  7. spring-security oauth2.0简单集成

    github地址:https://github.com/intfish123/oauth.git 需要2个服务,一个认证授权服务,一个资源服务 认证授权服务为客户端颁发令牌,资源服务用于客户端获取用户 ...

  8. SpringBoot - 集成Auth0 JWT

    目录 前言 session认证与Token认证 session认证 Token认证 JWT简介 JWT定义 JWT数据结构 JWT的类库 具体实现 JWT配置 JWT工具类 测试接口 前言 说说JWT ...

  9. CGO入门和OCR文字识别(非第三方API,有源码,效果好)实战

    这是我参与8月更文挑战的第5天,活动详情查看:8月更文挑战 系列文章见: [第四天] GDB调试指南:C++中如何调试生产环境的程序? [第三天] IM敏感词算法原理和实现 [第二天] 现代IM架构研 ...

  10. NOIP 模拟 $11\;\rm math$

    题解 签到题(然而还是不会) 考虑所有可能的值一定是 \(\in [0,k)\),且一定为 \(gcd(a_1,a_2,...a_n,k)\) 的倍数. 证明: 设 \(tmp=b_1a_1+b_2a ...