Alex_McAvoy

想要成为渔夫的猎手

Linux 字符转换命令

【tr 命令】

tr 命令是一个管道命令,用来删除一段数据中的字符,或是对字符进行替换

对于删除字符,命令格式为:tr -d str,其会在数据中匹配 str 中的每个字符,之后进行删除

对于替换字符,命令格式为:tr -s str1 str2,其会将数据中的 str1 替换为 str2,同时,支持正则表达式

【join 命令】

join 命令用于处理两个文件间的数据,其会比较两个文件的字段,对相同的行,会将两条数据连成一行,命令格式为:join [选项] file1 file2

常用的选项有:

  • -t:指定分隔符,默认为空格
  • -i:忽略大小写
  • -1:第一个文件以第几个字段分析,默认为第一个字段
  • -2:第二个字段以第几个字段分析,默认为第一个字段

需要注意的是,在使用 join 命令前,需要对处理的文件进行排序,否则在进行对比时某些项会被略过

【paste 命令】

paste 命令与 join 命令类似,同样会将两个文件中的数据连成一行,但与 join 不同的是,paste 不会对比两个文件的数据相关性

paste 命令格式为:paste [-d] file1 file2,其中,-d 选项后接分隔符,默认为 [Tab]

【col 命令】

在 Linux 说明文件中,含有多种控制字符,当使用数据流重定向将说明文件的内容输出为纯文本时,控制字符会变成乱码,而 col 命令能够有效的滤除这些控制字符

col 命令是一个管道命令,其有以下三种基本用法:

  • col -x:将所有的 [Tab] 替换为多个 [Space]
  • col -f:过滤掉 RLF,仅允许 HRLF 字符显示
  • col -b:过滤掉所有的控制字符

【expand 命令】

expand 命令用于将文件内的 [Tab] 转为 [Space],其命令格式为:expand [-t] file,其中,-t 选项后接数字,代表一个 [Tab] 用几个 [Space] 替换

感谢您对我的支持,让我继续努力分享有用的技术与知识点!