Linux命令行文本处理工具

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  基于关键字搜索

  命令grep用以基于关键字搜索文本

  命令格式grep “关键字”,并且通常和管道一起使用,如ls -l | grep “test”. 以下是常用的参数

  -i 在搜索的时候忽略大小写

  -n 显示结果所在的行

  -v 输出不带关键字的行

  -Ax 在输出的时候包含结果所在行之后(after)的指定行数

  -Bx 在输出的时候包含结果所在行之前(before)的指定行数

  基于列处理文本

  命令cut用以基于列文本内容

  使用示例:cut -d: -f1 /etc/passwd,即用’:’当成分割符,输出第一列,分割的是/etc/passwd文件, 以下是常用的参数

  -d 指定分割字符(默认是TAB)

  -f 指定输出的列号

  -c 基于字作进行切割, 如cut -c2-6 /etc/passwd即输出/etc/passwd的每一行的第2到第6个字符

  文本统计

  命令wc用劲统计文本信息

  使用示例:比如wc ok.cpp,以下是显示的结果和解释

  9 23 96 ok.cpp

  行数,共9行 单词数,共23个单词 字节数,共96个字节 文件名,叫ok.cpp

  以下是常用参数

  -l 只统计行数

  -w 只统计单词数

  -c 只统计字节数

  -m 只统计字符数

  文本排序

  命令sort用以对文本内容进行排序

  使用示例: 如sort file

  -r 进行倒序排序

  -n 基于数字进行排序

  -f 忽略大小写

  -u 删除重复行

  -t c 使用c作为分隔符为列进行排序

  -k x 指定用哪个key进行排序,通常用于, 进行基于指定字符分割为列的排序时,指定基于那个列排序

  删除重复行

  命令sort -u 可以用以删除重复行

  命令uniq用以删除重复的相邻行

  文本比较

  命令diff用以比较两个文件的区别

  以下是常用的参数

  -i 忽略大小写

  -b 忽略空格数量的改变

  -u 统一显示比较的信息(一般用以生成patch文件)

  检查拼写

  命令aspell用以显示检查英文拼写

  处理文本内容

  命令tr用以处理文本内容

  删除关键字

  tr -d “TMD” <file

  转换大小写

  tr ‘a-z’ ‘A-Z’ file

  搜索替换

  命令sed用以搜索并替换文件,这里有一个很好的教程, 以下列出一些常见的用法

  sed ‘s/old/new/g’ file

  把file里单词old替换为new,如果同一行出现多个old,把每个old都改为new

  sed ‘1,50s/old/new/g’ file

  把1到50行里每行出现的old改成new, 如果同一行出现多个old,把每个old都改为new

  sed -e ‘s/old1/new1/g’ -e’s/old2/new2/g’ file

  执行’s/old1/new1/g’ 和 ‘s/old2/new2/g’ 两个命令

  sed -f sedsrcipt file

  对file执行sedscipt脚本中的命令

旅行,其实是需要具有一些流浪精神的,

Linux命令行文本处理工具

相关文章:

你感兴趣的文章:

标签云: