一、排序命令sort

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

1、格式

sort [选项] 参数

cat file | sort 选项

2、常用选项

选项 说明

-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

3、例子









二、去除重复行操作命令uniq

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

1、格式

uniq [选项] 参数

cat file | uniq 选项

2、常用选项

选项 说明

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

-d 仅显示连续的重复行

-u 仅显示出现一次的行

uniq testfile3

sort -n testfile3 | unig -C

3、示例



三、字符转换命令tr

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

1、格式

tr [选项] [参数]

2、常用选项

选项 说明

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

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

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

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

3、参数

字符集1:

指定要转换或删除的原字符集。当执行转换操作时,必须使用参数”字符集2“指定转换操作时,必须使用参数”字符集2“指定转换的目标字符集。但执行删除操作时,不需要参数”字符集2“

字符集2:

指定要转换成的目标字符集

4、示例



删除空行

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" ":"



删除Windows文件“造成"的’^M’字符

cat abc.txt | tr -s "\r" "\n" > new_file



cat abc.txt | tr -d "\r" > new_file

Linux中遇到换行符("\n")会进行回车+换行的操作,回车符反而只会作为控制字符("^M")显示,不发生回车的操作。而windows中要回车符

+换行符("\r\n")才会回车+换行,缺少一个控制符或者顺序不对都不能正确的另起一行

cat -v abc.txt

dos2unix abc.txt



四.数组排序新方法

echo ${array[*]} | tr ' ' '\n'| sort-n > file

a=0

for i in $(cat file)

do

array[$a]=$i

let a++

array+=($i)

done



五、显示、连接文件命令——cut

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

1、格式

cut [选项] 参数

cat file | cut 选项

2、常用选项

选项 说明

-b 以字节为单位进行分割 ,仅显示行中指定直接范围的内容

-c 以字符为单位进行分割 , 仅显示行中指定范围的字符

-d 自定义分隔符,默认为制表符”TAB”

-f 显示指定字段的内容 , 与-d一起使用

-n 取消分割多字节字符

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

–out-delimiter 更改输出内容的分隔符

cut -d ':' -f 1 /etc/passwd

grep '/bin/bash' /etc/passwd | cut -d ':' -f 1-4,6,7 #以-分隔的开始字段和结束字段指定字段的范围

grep '/bin/bash' /etc/passwdIcut -d ': ' --complement -f 2 #排除第二个字段

cut -d ':' -f1, 7 --output-delimiter=' /etc/ passwd #输出分隔符使用空格分隔

3、示例



六、eval命令

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

示例





sort,uniq,tr,cut,eval命令的更多相关文章

  1. shell脚本命令(sotr/unip/tr/cut/eval)与正则表达式

    shell脚本命令(sotr/unip/tr/cut/eval)与正则表达式 1.sort命令 概述: Linux sort命令用于将文本文件内容加以排序. sort命令可针对文本文件的内容,以行为单 ...

  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. linux awk,sort,uniq,wc,cut命令详解

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

  4. 《linux 字符处理》- grep/sort/uniq/tr/paste

    一:基本 字符处理主要是文本的搜索和处理. 搜索也主要使用到了 管道 作为媒介. 二: grep 搜索文本 基本语法 * grep [-incv] ’文本’ 文件 * i 不区分大小写 * c 匹配行 ...

  5. 文本处理常用命令--sort,uniq,cut,wc

    #文本处理命令--sort,cut,wc及其他 文本处理命令还有其他常用的,比如:sort,cut,wc 1.cut命令的用法 cut命令: cut - remove sections from ea ...

  6. shell——sort、uniq、tr、cut和eval命令

    一.排序命令sort 以行位单位对文件内容进行排序,也可以根据不同的数据类型进行排序 格式:sort [选项] 参数 格式:cat file | sort 选项 1.2常用选项 选项说明 -f 忽略大 ...

  7. linux sort,uniq,cut,wc,tr命令详解

    sort是在Linux里非常常用的一个命令,对指定文件进行排序.去除重复的行 sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sor ...

  8. Linux管线命令 - cut,grep,sort,uniq,wc,tee,tr,col,join,paste,expand,split,xargs

    在每个管线后面接的第一个数据必定是『命令』喔!而且这个命令必须要能够接受 standard input 的数据才行,这样的命令才可以是为『管线命令』,例如 less, more, head, tail ...

  9. 文件上传下载,命令之wget / curl / which / sort / uniq / cut / wc /tr /sed

    目录 命令 1.文件的上传下载 2.从外网下载文件wget 3.curl文件下载 4.查找命令which 5.字符处理命令-排序sort 6.字符处理-去重uniq 7.字符处理-截取cut 8.字符 ...

随机推荐

  1. NAT介绍与配置

    一,NAT定义 二.NAT的分类 三,NAT配置实验 一,NAT定义 NAT(Network Address Translation),网络地址转换技术,随着Internet的发展,IPv4地址枯竭已 ...

  2. Kubernetes网络的iptables模式和ipvs模式支持ping分析

    1.iptables模式无法ping通原因分析 iptables模式下,无法ping通任何svc,包括clusterip.所有ns下,下面来分析原因: 查看kubernetes的网络模式 curl 1 ...

  3. 关于PHP导出数据超时的优化

    一般情况下,导出超时可能都是以下三种情况: 一.sql语句复杂,查询时间过长: 二.处理查询后数据逻辑冗余: 三.数据量过大导致响应超时. 接下来分别给出这三种情况的优化建议. 一.sql语句复杂,查 ...

  4. webpack(2)webpack核心概念

    前言   本质上,webpack 是一个用于现代 JavaScript 应用程序的 静态模块打包工具.当 webpack 处理应用程序时,它会在内部构建一个 依赖图(dependency graph) ...

  5. Spirng boot maven多模块

    https://blog.csdn.net/Ser_Bad/article/details/78433340

  6. WPF教程十:如何使用Style和Behavior在WPF中规范视觉样式

    在使用WPF编写客户端代码时,我们会在VM下解耦业务逻辑,而剩下与功能无关的内容比如动画.视觉效果,布局切换等等在数量和复杂性上都超过了业务代码.而如何更好的简化这些编码,WPF设计人员使用了Styl ...

  7. CQOI 2021 游记

    CQOI 2021 游记 Stage -1 \(\texttt{NOIP}\) 考的比较爆炸所以觉得自己没啥指望了. Stage 0

  8. vlc+flv.js 摄像头 H5 直播

    背景 业务需求:用最短的时间搞定摄像头直播到Web页面.因为没有过这方面经验,所以走了很多弯路,其实也不算弯路吧,大部分时间花在学习基础概念,寻找快速方案中.惯性思维想当然的以为找组件,配地址就能搞定 ...

  9. python3.7 jack棋牌11点实例

    # -*- codeing: utf-8 -*- # Project: 棋牌游戏11点 # Author: jack # Version: 2.2 # Start Time: 2021-07-24 i ...

  10. 微信小程序云开发-数据库-查询满足条件的数据

    一.查询价格大于10的商品 1.wxml文件 2.js文件 where条件语句:.where({price:db.command.gt(10)}) 3.查询结果 二.查询价格大于等于10的商品 js文 ...