• 简单的文本处理


      文本处理命令

     tr命令:用来删除一段围文本信息中的某些文字,或将其进行转换。使用方式:tr [option]...SET1 [SET2]。常用的选项有选项有-d:删除和set1匹配的字符,-s:去除set1指定的在输入文本中连续并重复的字符

     $ echo 'hello world' | tr -d 'olh' # 删除hello world中所有的o,l,h

     $ echo 'hello' | tr -s 'l'  #将hello中的ll去重 

     $ cat /etc/passwd | tr '[:lower:]'  '[:upper:]'  #将小写全部变成大写

     $ echo 'shiyanlou' | tr '[a-z]'  '[A-Z]'  #同上

     col命令:将Tab换成对等数量的空格键,或反转这个操作。使用方式:col [option] 。常用的选项有 -x:将Tab转为空格; -h:将空格转换为Tab

     $ cat -A /etc/protocols #查看/etc/protocols中的不可见字符。可以看到很多^I,这是Tab转义成可见字符的符号

     $ cat /etc/protocols | col -x | cat -A #使用col -x将/etc/protocol中的Tab转换为空格,然后在使用cat查看

     join命令:将两个文件中包含相同内容的那一行合并在一起。使用方式:join [option]... file1 file2。常用的选项有-t:指定分隔符,默认为空格;-i:忽略大小写的差异;-1:指明第一个文件要用哪个字段来对比,默认对比第一个字段;-2:只能第二个文件要用哪个字段来对比,默认对比第一个字段

     $ echo '1 hello world' > file1 #创建file1

     $ echo '1 hello shiyanlou' > file2 #创建file2

     $ join file1 file2

     $ sudo join -t':' /etc/passwd /etc/shadow  #将/etc/passwd和/etc/shadow两个文件合并,指定以':'为分隔符

     $ sudo join -t':' -1 4 /etc/passwd -2 3 /etc/group #将/etc/passwd和/etc/group两个文件合并,并指定以':'为分隔符,分别比对第四和第三个字段

     paste命令是在不对比数据的情况下,简单的将多个文件合并在一起,以Tab隔开。使用方式:paste [option] file... 常用选项有 -d:制定合并的分隔符,默认为Tab;-s:不合并到一行,每个文件为一行

     $ echo hello > file1

     $ echo world > file2

     $ echo www.baidu.com > file3

       $ paste -d ':' file1 file2 file3

     $ paste -s file1 file2 file3

     小蜜蜂游戏~

     $ sudo apt-get install ninvaders 

     在文件打包与解压缩中提到Windows/dos与Linux/UNIX文本文件一些特殊字符不一致,如断行符Windows为CR+LF( ),Linux/UNIX为LF( )。使用cat -A文本可以看到文本中包含的不可见特殊字符。Linux的 表现出来是一个$,而Windows/dos表现出来为^M$,可以直接使用dos2unix和unix2dos工具在两种格式之间进行转换,使用file命令可以查看文件的具体类型。

     

     

  • 相关阅读:
    VisualSVN-Server windows 版安装时报错 "Service 'VisualSVN Server' failed to start. Please check VisualSVN Server log in Event Viewer for more details."
    Pytest 单元测试框架之初始化和清除环境
    Pytest 单元测试框架入门
    Python(email 邮件收发)
    Python(minidom 模块)
    Python(csv 模块)
    禅道简介
    2020年最好的WooCommerce主题
    Shopify网上开店教程(2020版)
    WooCommerce VS Magento 2020:哪个跨境电商自建站软件更好?
  • 原文地址:https://www.cnblogs.com/forerver-elf/p/4699824.html
Copyright © 2020-2023  润新知