Linux文档编辑相关命令详解
- 电脑硬件
- 2025-09-15 00:15:02

Linux文档编辑相关命令 1. grep
grep (global regular expression) 命令用于查找文件里符合条件的字符串或正则表达式。
1.1 语法grep [options] pattern [files]
1.2 常用选项 -i:忽略大小写进行匹配。-v:反向查找,只打印不匹配的行。-n:显示匹配行的行号。-r:递归查找子目录中的文件。-l:只打印匹配的文件名。-c:只打印匹配的行数。 1.3 实例 在文件 file.txt 中查找字符串 “hello”,并打印匹配的行 grep hello file.txt 在文件夹 dir 中递归查找所有文件中匹配字符串 “hello” 的行,并打印匹配行所在的文件名和行号 grep -rn hello dir/ 在标准输入中查找字符串 “world”,并只打印匹配的行数 echo "hello world" | grep -c world 在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印匹配的行 grep test *file 查找文件名中包含 test 的文件中不包含 test 的行 grep -v test *test* 2. trtr 命令用于转换或删除文件中的字符。
2.1 语法tr [-cdst] [第一字符集] [第二字符集]
2.2 常用选项 -c, --complement:反选设定字符。也就是符合第一字符集的部分不做处理,不符合的部份才进行转换。-d, --delete:删除指令字符。-s, --squeeze-repeats:缩减连续重复的字符成指定的单个字符。-t, --truncate-set1:削减第一字符集指定范围,使之与第二字符集设定长度相等。 2.3 实例 将文件 testfile 中的小写字母全部转换成大写字母 cat testfile | tr a-z A-Z 将文件 testfile 中的每个单词单独成一行 cat testfile | tr -s ' ' '\n' 3. wcwc命令用于计算字数。
3.1 语法wc [-clw] [文件…]
3.2 常用选项 -c:显示Bytes数。-l:显示行数。-w:显示字数。 3.3 实例 默认情况下,wc 将计算指定文件的行数、字数以及字节数 wc testfile 4. sortsort 命令用于将文本文件内容加以排序。
4.1 语法sort [-bcdfimMnr] [文件] [-k field1[,field2]]
4.2 常用选项 -b:忽略每行前面开始出的空格字符。-c:检查文件是否已经按照顺序排序。-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符。-f:排序时,将小写字母视为大写字母。-i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符。-m:将几个排序好的文件进行合并。-M:将前面3个字母依照月份的缩写进行排序。-n:依照数值的大小排序。-r:以相反的顺序来排序。 4.3 实例 对文件的行进行排序 sort testfile testfile的原有内容为: test 30 Hello 95 Linux 85 结果如下: Hello 95 Linux 85 test 30注:sort 命令将以默认的方式将文本文件的第一列以 ASCII 码的次序排列,并将结果输出到标准输出。
使用 -k 参数设置对第二列的值进行重排 sort testfile -k 2 test 30 Linux 85 Hello 95 5. uniquniq 命令用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用。
5.1 语法uniq [-cdu] [输入文件] [输出文件]
5.2 常用选项 -c或–count:在每列旁边显示该行重复出现的次数。-d或–repeated:仅显示重复出现的行列。-u或–unique:仅显示出一次的行列。[输入文件] 指定已排序好的文本文件。如果不指定此项,则从标准读取数据;[输出文件] 指定输出的文件。如果不指定此选项,则将内容显示到标准输出设备(显示终端)。 5.3 实例 文件 testfile 中第 2、3、5、6、7、9行为相同的行,使用 uniq 命令删除重复的行 uniq testfile testfile的原有内容为: test 30 test 30 test 30 Hello 95 Hello 95 Hello 95 Hello 95 Linux 85 Linux 85 使用 uniq 命令删除重复的行后,有如下输出结果: test 30 Hello 95 Linux 85 检查文件并删除文件中重复出现的行,并在行首显示该行重复出现的次数 uniq -c testfile 结果如下: 3 test 30 #前面的数字的意义为该行共出现了3次 4 Hello 95 #前面的数字的意义为该行共出现了4次 2 Linux 85 #前面的数字的意义为该行共出现了2次注:当重复的行不相邻时,uniq 命令是不起作用的。例如,文件内容为以下时,uniq 命令不起作用。
test 30 Hello 95 Linux 85 test 30 Hello 95 Linux 85 test 30 Hello 95 Linux 85这时我们可以采用 sort + uniq
$ sort testfile | uniq Hello 95 Linux 85 test 30Linux文档编辑相关命令详解由讯客互联电脑硬件栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Linux文档编辑相关命令详解”
上一篇
QT——文件IO