参考资料
目录
一. 准备数据
⏹test-data1.txt
01,orange,250,东京1
02,apple,230,福冈1
03,apple,130,福冈2
04,grape,450,东京2
05,orange,150,大阪1
二. cut命令配置项
-d
:指定切分文字,默认情况下是TAB-f
:指定要提取的字段列表,
可以指定一个或多个字段,以从每一行的文本中提取并显示这些字段。-b
:指定切割的字节数。在UTF-8中,一个汉字等于3个字节。--complement
:用来取反,获取出匹配外的字段。
2.1 -d 指定切分文字
⏹指定,
为切分文字,获取第1个字段
cut -d"," -f1 ./test-data1.txt
2.2 -f 指定要提取的字段列表
2.2.1 提取第1和第4个字段
cut -d"," -f1,4 ./test-data1.txt
2.2.2 提取第2~4个字段
cut -d"," -f2-4 ./test-data1.txt
2.2.3 提取到第3个字段
cut -d"," -f-3 ./test-data1.txt
2.2.4 从第3个字段开始提取
cut -d"," -f3- ./test-data1.txt
2.3 -b 切割指定的字节数
- 在utf-8编码中,一个汉字等于3个字节。
⏹切割1-2位字节
cut -b1-2 ./test-data1.txt
⏹将地名给切割出来
cut -d"," -f4 ./test-data1.txt | cut -b1-6
2.4 --complement 取反
⏹获取1-3个字节之外的所有数据
cut -b1-3 --complement ./test-data1.txt
三. 实例
有文件分布在 20240102 和 20240103 文件夹中
现在想把20231225~20231231,202401月份的文件名获取出来,并排序
ls -l 202401*/202{312{2[5-9],3[01]},401*}-con.txt | cut -d"/" -f2 | sort