Linux文本处理相关命令
发布时间:2022-08-09 10:27:21 所属栏目:Linux 来源:互联网
导读:一、文本处理命令# 1.1 sort命令# Linux sort命令用于将文本文件内容加以排序。 sort 可针对文本文件的内容,以行为单位来排序。 语法格式如下: sort [参数]...[文件] 相关参数 参数说明 -n 依照数值的大小排序 -r 以相反的顺序来排序 -k 以某列进行排序 -t
一、文本处理命令# 1.1 sort命令# Linux sort命令用于将文本文件内容加以排序。 sort 可针对文本文件的内容,以行为单位来排序。 语法格式如下: sort [参数]...[文件] 相关参数 参数说明 -n 依照数值的大小排序 -r 以相反的顺序来排序 -k 以某列进行排序 -t 指定分割符,默认是以空格为分隔符 … 案例: $ cat testfile # testfile文件原有排序 test 30 Hello 95 Linux 85 使用sort命令重新排序后的结果如如下: $ sort testfile # 重排结果 Hello 95 Linux 85 test 30 使用 -k 参数设置对第二列的值进行重排,结果如下: $ sort testfile -k 2 test 30 Linux 85 Hello 95 1.2 uniq命令# Linux uniq 命令用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用。 uniq 可检查文本文件中重复出现的行列。 语法格式如下: uniq [-cdu]...[输入文件][输出文件] 相关参数 参数说明 -c 在每列旁边显示该行重复出现的次数 -d 仅显示重复出现的行列 -u 仅显示出一次的行列 [输入文件] 指定已排序好的文本文件。如果不指定此项,则从标准读取数据 [输出文件] 指定输出的文件。如果不指定此选项,则将内容显示到标准输出设备(显示终端) … 案例: testfile中的原有内容为: $ cat testfile #原有内容 test 30 test 30 test 30 Hello 95 Hello 95 Hello 95 Hello 95 Linux 85 Linux 85 使用uniq 命令删除重复的行后,有如下输出结果: $ uniq testfile #删除重复行后的内容 test 30 Hello 95 Linux 85 $ uniq -c testfile #删除重复行后的内容 3 test 30 #前面的数字的意义为该行共出现了3次 4 Hello 95 #前面的数字的意义为该行共出现了4次 2 Linux 85 #前面的数字的意义为该行共出现了2次 当重复的行并不相邻时,uniq 命令是不起作用的,即若文件内容为以下时,uniq 命令不起作用: $ cat testfile1 # 原有内容 test 30 Hello 95 Linux 85 test 30 Hello 95 Linux 85 test 30 Hello 95 Linux 85 这时我们就可以使用 sort: $ sort testfile1 | uniq Hello 95 Linux 85 test 30 统计各行在文件中出现的次数: $ sort testfile1 | uniq -c 3 Hello 95 3 Linux 85 3 test 30 在文件中找出重复的行: $ sort testfile1 | uniq -d Hello 95 Linux 85 test 30 1.3 cut命令# Linux cut命令用于显示每行从开头算起 num1 到 num2 的文字。 语法格式如下: cut [-c] [file] cut [-df] [file] ... 使用说明: cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。 如果不指定 File 参数,cut 命令将读取标准输入。必须指定 -b、-c 或 -f 标志之一。 相关参数 参数说明 -c 以字符为单位进行分割 -d 自定义分隔符,默认为制表符 -f 与-d一起使用,指定显示哪个区域 … 案例: [root@jiangzhi ~]# cat juechen # 原文件内容 |7|9|8|7|5|5|3|4|5|1|3|4|5 |7|8|7|8|5|2|5|4|5|1 |6|5|7|6|7|6|5|3|2 |6|5|6|7|6|5|7 |3|2|4|3|4|5|2|3|4|6|2|5 |2|3|3|5|3|4|6 |2|1|5|3|4|5|3|2|4 |5|4|5|4|3 |2|5|3|4|5|2|3 如果我们想提取每一行的第2个字节,可以这样: [root@jiangzhi ~]# cat juechen | cut -b2 7 7 6 6 3 2 2 5 2 1.4 tr命令# Linux tr 命令用于转换或删除文件中的字符。 tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备。 语法格式如下: tr [-cdst]...[第一字符集][第二字符集] tr [OPTION]…SET1[SET2] 相关参数 参数说明 -c, --complement 反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换 -d, --delete 删除指令字符 -s, --squeeze-repeats 缩减连续重复的字符成指定的单个字符 -t, --truncate-set1 削减 SET1 指定范围,使之与 SET2 设定长度相等 … 案例: testfile文件中的内容如下: $ cat testfile #testfile原来的内容 Linux networks are becoming more and more common, but scurity is often an overlooked issue. Unfortunately, in today’s environment all networks are potential hacker targets, fro0m tp-secret military research networks to small home LANs. Linux Network Securty focuses on securing Linux in a networked environment, where the security of the entire network needs to be considered rather than just isolated machines. It uses a mix of theory and practicl techniques to teach administrators how to install and use security applications, as well as how the applcations work and why they are necesary. 将文件testfile中的小写字母全部转换成大写字母,此时,可使用如下命令: cat testfile |tr a-z A-Z 使用 tr 命令大小写转换后,得到如下输出结果: $ cat testfile | tr a-z A-Z #转换后的输出 LINUX NETWORKS ARE BECOMING MORE AND MORE COMMON, BUT SCURITY IS OFTEN AN OVERLOOKED ISSUE. UNFORTUNATELY, IN TODAY’S ENVIRONMENT ALL NETWORKS ARE POTENTIAL HACKER TARGETS, FROM TP-SECRET MILITARY RESEARCH NETWORKS TO SMALL HOME LANS. LINUX NETWORK SECURTY FOCUSES ON SECURING LINUX IN A NETWORKED ENVIRONMENT, WHERE THE SECURITY OF THE ENTIRE NETWORK NEEDS TO BE CONSIDERED RATHER THAN JUST ISOLATED MACHINES. IT USES A MIX OF THEORY AND PRACTICL TECHNIQUES TO TEACH ADMINISTRATORS HOW TO INSTALL AND USE SECURITY APPLICATIONS, AS WELL AS HOW THE APPLCATIONS WORK AND WHY THEY ARE NECESARY. 1.5 wc命令# Linux wc命令用于计算字数。 利用wc指令我们可以计算文件的Byte数、字数、或是行数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据。 语法格式如下: wc [-clw]...[文件...] 相关参数 参数说明 -c 统计文件的Bytes数 -l 统计文件的行数 -w 统计文件中单词的个数,默认以空白字符做为分隔符 注:在Linux系统中,一段连续的数字或字母组合为一个词 实例: 在默认的情况下,wc将计算指定文件的行数、字数,以及字节数。先查看testfile文件的内容,可以看到: $ cat testfile Linux networks are becoming more and more common, but scurity is often an overlooked issue. Unfortunately, in today’s environment all networks are potential hacker targets,fro0m tp-secret military research networks to small home LANs. Linux Network Securty focuses on securing Linux in a networked environment, where the security of the entire network needs to be considered rather than just isolated machines. It uses a mix of theory and practicl techniques to teach administrators how to install and use security applications, as well as how the applcations work and why they are necesary. (编辑:鞍山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |