Linux操作命令(七) 1.cut命令 2.paste命令 3.tr命令

1、cut 命令

剪切/分割,拆分文件列

常用参数

参数描述
-b 以字节为单位进行分割
-c 以字符为单位进行分割
-d 自定义分隔符,默认为制表符
-f 自定义字段
--complement 抽取整个文本行,除了那些由 -c 或 -f 选项指定的文本

取出student.txt文件中的第一列和第三列:cut -f 1,3 -d ' ' student.txt

取出student.txt文件中的第一列:cut -f 1 -d ' ' student.txt

取出student.txt文件中的前三列:cut -f 1-3 -d ' ' student.txt

取出student.txt文件中除第一列的其他列:cut -f 1 -d ' ' student.txt --complement

 2、paste 命令

把多个不同的文件内容粘贴在一起,形成新的文件(合并文件的列)

paste命令的功能正好与 cut 相反。它会添加一个或多个文本列到文件中,而不是从文件中抽取文本列。它通过读取多个文件,然后把每个文件中的字段整合成单个文本流,输入到标准输出

参数描述
-s 将每个文件合并成行而不是按行粘贴
-d 自定义分隔符,默认为制表符

student.txttelphone.txt文件中的内容按列拼接:paste student.txt telphone.txt

student.txttelphone.txt文件中的内容按列拼接,指定分隔符为:paste student.txt telphone.txt -d :

student.txttelphone.txt文件中的内容各自拼接成一行:paste  -s student.txt telphone.txt

3、tr命令

字符转换、替换和删除,主要用于删除文件中的控制符或进行字符串转换等

tr 命令常被用来更改字符,我们可以把它看作是一种基于字符的查找和替换操作。换字是一种把字符从一个字母转换为另一个字母的过程,tr 可以从标准输入中替换、缩减和删除字符,并将结果写到标准输出

将telphone.txt中字符大写转换为小写:cat telphone.txt | tr 'A-Z' 'a-z'

 将输入的字符大写转换为小写:echo 'THIS IS SHIYANLOU!' | tr 'A-Z' 'a-z'

将输入的字符中的数字删除:echo 'THIS 123 IS S1HIY5ANLOU!' | tr -d '0-9'

  • 1. tr '源字符集' '目标字符集':将源字符集中的字符替换为目标字符集中的字符。
  • 2. tr -d '要删除的字符':删除指定字符。
  • 3. tr -s '要替换的字符':将连续出现的要替换的字符压缩成一个。
  • 4. tr -c '字符集':将不在字符集中的字符删除。
  • 5. tr [:upper:] [:lower:]:将大写字母转换为小写字母。
  • 6. tr [:lower:] [:upper:]:将小写字母转换为大写字母。
  • 7. tr -t '源字符集' '目标字符集':将源字符集中的字符替换为目标字符集中的字符,同时压缩连续出现的目标字符。
  • 8. tr -C '字符集':将在字符集中的字符删除。
    •   假设有一个文件file.txt,
    •   内容如下: hello world goodbye world
    •   使用tr -d删除其中的字母o,命令如下: tr -d 'o' < file.txt
    •   输出结果为: hell wrld gdbye wrld 可以看到,所有的字母o都被删除了
posted @ 2023-03-01 17:57  小小生Sir  阅读(223)  评论(0编辑  收藏  举报