Linux学习系列--如何在Linux中进行文本管理

管道符

在Linux系统中,会有许多和字符串相关的操作 ,这回涉及到一个概念,叫做管道。在Linux中的管道是一个固定大小的缓冲区,大小为1页(4K字节)。它所使用的符号管道符是“|”,用来做进程之间的连接。

  • 例如在命令 ls -l /etc/init.d | more ,这是表示在执行完前一个命令后继续执行下一个more命令

搜索文本的命令grep

在Linux中经常使用的用来进行grep命令搜索文本

  • 在tomAndJerry.txt文件中搜索包含name的命令,使用参数-i 会忽略大小写grep -i 'name' tomAndJerry.txt

排序命令sort

在进行排序的时候通常会使用到sort这个命令,在结合一些参数进行设置,能很好的进行排序的操作。 sort [-ntkr] filename,这里的-n 指的是采用数字方式排序,-t是指定分隔符排序,-k是指定第几列,-r反向排序
实际使用的命令是:cat sort.txt | sort -t ":" -k 2 -n

删除重复内容uniq

在实工作中,会遇到这样的情况是希望在有重复行出现的时候,能够去掉重复行,这会使用到命令uniq,参数- i 会忽略大小写,-c会计算重复行数量。
在实际中这个命令会和sort一起shying,先将文件使用sort进行排序(这样重复的内容就能显示在连续的几行中),然后再使用uniq删除掉重复的内容(uniq的作用就在于删除连续的完全一致的行)cat unip.txt | sort | unip -c

文本截取命令cut

在Linux中,有类似于在Java程序中的的字符串截取,这就是在Linux中常用的cut命令。使用cut的时候,会有

  • 截取指定列的分隔符号 cut -f 指定列 -d '分隔符'
    • 打印系统中的所有用户:cat /etc/passwd | cut -f1 -d ':'
    • 打印用户和用户的家目录:cat /etc/passwd | cut -f1 , 6 -d ':'
    • 打印用户、目录、和登录的shell:cat /etc/passwd | cut -f 1,6 -7 -d ':'
  • 截取指定列的字符串 cut -c 指定列的字符串
    • 打印每行第1-5个7-10个字符串:cat etc/passwd | cut -c 1-5,7-10

文本转换的命令是tr

在使用文本转换或者删除的时候,会使用到具体的命令是tr,比如说是大小写的转换,参数-d是删除文本内容

  • 实现大小写转换 :cat /etc/passwd | tr '[a-z]' '[A-Z]'
  • 删除冒号 :cat /etc/passwd | tr -d ':'

文本合并paste

在文本操作中,不仅仅是有文本的转换和删除,也会有两个文本之间的内容合并,这就会使用一个paste命令,没有参数就是直接的行与行之间之间发生了合并,如果加上了参数-d 分隔符等,就可以实现了文件的合并

  • 文件中照行合并:paste filename1 filename2
  • 带分隔符的合并:paste -d : filename1 filename2

大文件切割split

在Linux下使用split命令来实现文件的分割,支持按照行数分割和按照大小分割这两种模式。
常用的参数有-h (文件详细信息查看) ,-l (参数)

  • 查看大文件 ll -h big_file,txt
  • 按行切割,-l参数指定500行切割一次:split -l 500 big_file.txt smal_file_
  • 二进制文件按照大小切割:ll -h big_bin
  • 二进制文件切割使用的命令是:split -b 64m big_bin small_bin_
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值