cut OPTION... [FILE]...
-b 以字节位单位分割 这些字节位置将忽略多字节字符边界,除非也指定了-n 标志
-c 以字符为单位进行分割
-d 自定义分隔符 默认为制表符
-f 指定显示区域 与-d配合使用
-n 取消分割多字节字符 仅和 -b 标志一起使用,如果字符的最后一个字节落在由 -b 标志的 List 参数指示的范围之内,该字符将被写出;否则,该字符将被排除
由选项可以看出cut剪切文件依据三种方法:字节、字符、区域
[root@localhost ~]# cat test
hello world hello world hello world
hello world!
1.截取文件每行的第3个和第5个字符
[root@localhost ~]# cut -b 3,5 test
lo
lo
2.截取文件每行的第3个、第4个和第5个字符
[root@localhost ~]# cut -b 3-4,5 test
llo
llo
3.截取文件每行的第3个、第4个和第7个字符
[root@localhost ~]# cut -b 3-4,7 test
llw
llw
4.截取文件每行的前3个字符
[root@localhost ~]# cut -b -3 test
hel
hel
sort [OPTION]... [FILE]...
sort [OPTION]... --files0-from=F
-f 忽略大小写
-b 忽略最前面的空格字符
-M 以月份名字排序
-n 以纯数字排序 默认以文字型态排序
-r 反序
-u uniq去重
-t 指定分隔符 默认以tab为分隔符
-k 指定以哪个区间为分隔符
-o 重定向到文件
touch test.txt
内容如下
6d7fce9fee471194aa8b5b6e47267f03 ./aersion.ini
8c47b68c23994cf382bd12a3bd4a1fe8 ./plugin.conf
e45f64ed552ab0176be337ad77f3b3ae ./start.sh
6172fad14869bbb949ea1d60c4771f14 ./etop.sh
8dd2db4b88727758bb0800c321bafc34 ./west_proc
1e142f0d573c5891cc14d8864e073d53 ./test_proc.c
6d7fce9fee471194aa8b5b6e47267f03 ./aersion.ini
1.默认sort排序
sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出
[root@localhost ~]# sort test.txt
1e142f0d573c5891cc14d8864e073d53 ./test_proc.c
6172fad14869bbb949ea1d60c4771f14 ./etop.sh
6d7fce9fee471194aa8b5b6e47267f03 ./aersion.ini
6d7fce9fee471194aa8b5b6e47267f03 ./aersion.ini
8c47b68c23994cf382bd12a3bd4a1fe8 ./plugin.conf
8dd2db4b88727758bb0800c321bafc34 ./west_proc
e45f64ed552ab0176be337ad77f3b3ae ./start.sh
2.根据符号“.”分割字符串,并以分割后的test.txt 文件中的第2列进行排序
[root@localhost ~]# sort -k 2 -t "." test.txt
6d7fce9fee471194aa8b5b6e47267f03 ./aersion.ini
6d7fce9fee471194aa8b5b6e47267f03 ./aersion.ini
6172fad14869bbb949ea1d60c4771f14 ./etop.sh
8c47b68c23994cf382bd12a3bd4a1fe8 ./plugin.conf
e45f64ed552ab0176be337ad77f3b3ae ./start.sh
1e142f0d573c5891cc14d8864e073d53 ./test_proc.c
8dd2db4b88727758bb0800c321bafc34 ./west_proc
uniq用于去除排序文件中的重复行(uniq不会检查重复的行,除非它们是相邻的行)
uniq [OPTION]... [INPUT [OUTPUT]]
-c --count,在每行前加上表示相应行目出现次数的前缀编号
-d --repeated,只输出重复的行
-D --all-repeated[=delimit-method],显示所有重复的行
-u --unique,只显示唯一的行
-i --ignore-case,不区分大小写
-f --skip-fields=N,比较时跳过前N列
-z --zero-terminated,使用’\0’作为行结束符,而不是新换行
-w --check-chars=N,对每行第N个字符以后的内容不作对照
-s --skip-chars=N,比较时跳过前N个字符
初始文件
[root@localhost ~]# cat t.txt
Apple
apple
banana
cherry
cherry
peach core
pear core
1.默认去重,默认区分大小写
[root@localhost ~]# uniq t.txt tt;cat tt
Apple
apple
banana
cherry
peach core
pear core
2.跳过第1列(列是以空白分割出来的)
[root@localhost ~]# uniq -f1 t.txt file;cat file
Apple
peach core
3.忽略每行的第3个字符以后的内容
peach core和pear core前3个字符相同,被去重
[root@localhost ~]# uniq -c -w3 t.txt file1;cat file1
1 Apple
1 apple
1 banana
2 cherry
2 peach core
4.跳过和忽略组合
[root@localhost ~]# uniq -c -s1 -w3 t.txt file1;cat file1
2 Apple
1 banana
2 cherry
1 peach core
1 pear core
wc(Word Count)命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出
wc [OPTION]... [FILE]...
-c 统计字节数
-l 统计行数
-w 统计字数 一个字被定义为由空格、跳格或换行字符分隔的字符串
-m 统计字符数 不能与 -c 一起使用
-L 打印最长行的长度
tr [OPTION]... SET1 [SET2]
-s 删除所有重复出现字符序列,只保留第一个
-t 削减 SET1 指定范围,使之与 SET2 设定长度相等
-c 反选设定的字符
-d 删除指定字符