SHELL 基本文本处理

echo以及文本的格式化输出
  • -n 禁止换行
  • -e 解释转义字符
字符说明
\a报警符,相当于ASCII码的BEL字符
\b退格符
\c禁止继续输出文本
\f换页符
\n换行符
\r回车符
\t水平制表符号
\反斜杠
fold
  • 将超出指定宽带的文本进行折叠处理,使得超过指定宽度的字符转到下一行输出
  • 基本语法:fold [option] [filename]
    • fold 命令常用选项(option)如下:
      • -b:按照字节计算宽带,默认情况下,fold按列来计算宽度
      • -s:在空格处折断
      • -w:指定宽度,默认为80列
    • fold命令后面的文件如果是多个文件的话,文件名之间用空格隔开
fmt
  • 一个小型的文本格式化工具
  • 基本语法:fmt [-width] [option] [filename]
  • [-width] 选项用来指定文本行的列数,默认为75列
    • fmt 命令常用选项(option)如下:
      • -c:保留每个段落的第一行的缩进,该段落剩余的行的的左边距与第二行相同
      • -t:使用-t后,每个段落的第一行和第二行的缩进必须不相同,否则第一行被看作是一个单独的段落
      • -s:折断超出指定宽度的行,不合并少于指定宽度的行
      • -u:统一空格的个数,单词之间保留1个空格,句子之间保留2个空格
      • -w:指定每个的最大宽度,默认为75列
rev
  • 反转文件中文本行的字符顺序
  • rev [filename]
    • 其中filename是文件名或者文件列表,多个文件需要用空格隔开
      • -column 指定输出的栏数,默认值为1
      • -a 修改-column的显示小姑,水平创建栏,与-column选项配合使用
      • -d 产生2个空格的输出
      • -F-f 使用换页符代替换行符实现分页
      • -h 指定页眉,如果没有指定,则默认使用文件名作为页眉
      • -l 指定每页的行数
      • -o 指定每行的缩进的字符数量
      • -w 指定页面宽度,默认为72个字符
sort
  • 为排序文本、检查文件是否已经排序以及合并文件。
    • 基本语法:sort [option] [file]
      • -b 忽略前导空格或者制表符,找到第一个非空字符
      • -c 测试文件是否已经存在
      • -d 根据字典顺序排序,该选项比较数字、字母和空格等字符
      • -f 忽略大小写,将小写字母转成大写字母后参与比较
      • -i 仅仅比较可打印字符
      • -n 根据算数值进行比较,参与比较的字符有空格、十进制以及减号等
      • -R 根据哈希值随机排序
      • -r 颠倒排序结果
      • -k 定义排序关键字
      • -m 仅仅合并已经排好序的文件,不执行排序操作
      • -o 将排序结果写入文件,而不是标准输出设备
      • -t 指定字段分隔符,默认值为空格
      • -u 删除重复的行,只保留第一个
cut
  • 从垂直方向上对文本进行操作
    • 基本格式: cut option [file]
      • -b 只选择指定的字节
      • -c 只选择指定 的字符
      • -d 自定义列分隔符,默认值为制表符
      • -f 只选择列表中指定的文本列,文本列用列号表示,多个列之间用逗号隔开
      • -n 取消分割多字节字符
      • -s 不输出不包含列分隔符的行
使用paste命令拼接文本行
  • 将某些文件的文本行并行地连接在一起,形成一个新的文件
    • paste [option] [file]
      • -d 制定拼接结果中列分隔符。默认paste命令生成的文件使用制表符分隔列
      • -s 将多个文件串行地拼接在一起,即将后面文件的能美容追加到后面一个文件的后面
使用tr命令替换文本内容
  • 转换或者删除特定的字符
  • 只能从标准输入获取数据,并且将处理结果写到标准输出设备
    • 基本语法:tr [option] set1 [set2]
      • -s 可以“删除”重复字符
      • 压缩重复字符:res=``te -s "[a-z]" <demo9.txt 将demo9.txt的内容作为输入过滤掉小写字母后的结果赋值给变量res
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python小叮当

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值