AI智能
改变未来

Shell工具(cut,sed,awk,sort用法)


一、cut

基本定义:cut的工作就是“剪”,具体来说就是在文件中负责剪切数据用的。
cut是以每一行为一个处理对象的,cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段输出。

1、基本用法

cut [选项参数]  filename

2.选项参数说明

选项参数 功能
-f 指定域(fields),提取第几列
-d 指定分隔符,对列进行分割
-c 以字符 (characters) 为单位取出固定字符区间
-b 以字节(bytes) 为单位取出固定字符区间

注意:只有当操作域时才可以指定输入分界符。

3、实例详解
3.1 切割出数字17
数据准备

查找出包含数字17的那一行,指定空格为分隔符,指定取第三列的数据

grep 17 |cut -d \" \" -f 3


3.2 切割并输出第五个冒号(:)后面的完整路径

数据准备

指定冒号为分隔符,取第五个冒号后的第六列数据直到最后

cat cut1.txt |cut -d: -f 6-


3.3 查询并输出指定分隔符分割后的多列数据

cat cut1.txt |cut -d: -f 3,4,5


3.4 按字符取出前四列

cat cut1.txt |cut -b \"1-4\"


3.5 按字节取前八列

cat cut1.txt |cut -b \"-8\"

二、sed

基本定义:sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”,接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。

1、基本用法

sed [选项参数] ‘command’ filename

2. 选项参数说明

选项参数 功能
-e 直接在指令列模式上进行sed的动作编辑。
-i 直接编辑文件

3、命令功能描述

命令 功能描述
a 新增,a的后面可以接字串,在下一行出现
d 删除
s 查找并替换
赞(0) 打赏
未经允许不得转载:爱站程序员基地 » Shell工具(cut,sed,awk,sort用法)