第四天作业
1、使用whereis 查找 locate命令
使用which查找whereis命令
使用locate查找rm命令
[root@redhat ~]# which whereis
/usr/bin/whereis
[root@redhat ~]# locate rm
locate: can not stat () `/var/lib/mlocate/mlocate.db': No such file or directory
[root@redhat ~]# locate rm
locate: can not stat () `/var/lib/mlocate/mlocate.db': No such file or directory
2、find命令使用:
使用find命令在当前路径下查找所有的普通文件
使用find命令查找当前路径下的file1.txt,file2.txt,file3.txt
使用find命令查找文件所有者为root的普通文件
使用find命令查找修改时间在1天以内的普通文件
[root@redhat ~]# find . -type f
./.bash_logout
./.bash_profile
./.bashrc
./.cshrc
./.tcshrc
./.cache/dconf/user
./.cache/gnome-shell/update-check-3.32
./.cache/tracker/db-version.txt
./.cache/tracker/meta.db
./.cache/tracker/db-locale.txt
[root@redhat ~]# find . -name "file*"
./file1.txt
./file2.txt
./file3.txt
[root@redhat ~]# find . -user root
.
./.bash_logout
./.bash_profile
./.bashrc
./.cshrc
[root@redhat ~]# find . -mtime -1
.
./.cache/tracker/meta.db
./.cache/tracker/meta.db-wal
./.cache/tracker/meta.db-shm
./.cache/gnome-software/fwupd/remotes.d/lvfs
3、.cut命令使用:
给定文件cut_data.txt且内容为:
No Name Score
1 zhang 20
2 li 80
3 wang 90
4 sun 60
使用默认定界符切割文件内容,且输出切割后的第一个字段
切割文件内容,且输出切割后的第一个字段和第三个字段
按字节切割:输出切割的第一个字节到第10个字节的内容
按字符切割:输出切割后的第一个字符和第5个字符的内容
按指定分界符去切割:内容如下, 输出第一个字段和第三个字段内容
No|Name|Score
1|zhang|20
2|li|80
3|wang|90
4|sun|60
[root@redhat ~]# vim cut_data.txt
[root@redhat ~]# cat cut_data.txt
NO Name Score
1 zhang 20
2 li 80
3 wang 90
4 sun 60
[root@redhat ~]# cut -d " " -f1 cut_data.txt
NO
1
2
3
4
[root@redhat ~]# cut -d " " -f1,3 cut_data.txt
NO Score
1 zhang
2 li
3 wang
4 sun
[root@redhat ~]# cut -c 1,5 cut_data.txt
Na
1h
2i
3a
4u
[root@redhat ~]# vim cut_data2.txt
[root@redhat ~]# cat cut_data2.txt
NO|Name|Score
1|zhang|20
2|li|80
3|wang|90
4|sun|60
4、uniq命令使用: 新建文件uniq_data.txt,文件内容为
Welcome to Linux
Windows
Windows
Mac
Mac
Linux
使用uniq命令输出去重后的结果
使用uniqmingl只输出重复的行
使用uniq命令输出不重复的行
使用uniq命令统计重复次数
[root@redhat ~]# vim cut_data2.txt
[root@redhat ~]# cat uniq_data.txt
Welcome to Linux
Windows
Windows
Mac
Mac
Linux
[root@redhat ~]# uniq uniq_data.txt
Welcome to Linux
Windows
Mac
Linux
[root@redhat ~]# uniq -u uniq_data.txt
Welcome to Linux
Linux
[root@redhat ~]# uniq -d uniq_data.txt
Windows
Mac
[root@redhat ~]# uniq -c uniq_data.txt
1 Welcome to Linux
2 Windows
2 Mac
1 Linux
5、sort命令:给定文件 num.txt, args.txt
文件内容:num.txt
1
3
5
2
4
文件内容:args.txt
test
args1
args2
args4
args4
args3
对num.txt进行排序,且将结果输出到sorted_num.txt中
对args.txt进行排序,且将结果输出到sorted_args.txt中
对num.txt和args.txt进行排序,且将结果输出到sorted_merge.txt中
对args.txt排序后去重输出
合并sorted_args.txt和sorted_num.txt且输出
给定文件info_txt:按第二列作为key进行排序
No Name Score
1 zhang 20
2 li 80
3 wang 90
4 sun 60
[root@redhat ~]# vim num.txt
[root@redhat ~]# vim args.txt
[root@redhat ~]# cat num.txt
1
3
5
2
4
[root@redhat ~]# cat args.txt
test
args1
args2
args4
args4
args3
[root@redhat ~]# sort -n num.txt >> sorted_num.txt
[root@redhat ~]# cat sorted_num.txt
1
2
3
4
5
[root@redhat ~]# sort -n args.txt >> sorted_args.txt
[root@redhat ~]# cat sorted_args.txt
args1
args2
args3
args4
args4
test
[root@redhat ~]# sort -n num.txt >> sorted_merge.txt
[root@redhat ~]# sort -n args.txt >> sorted_merge.txt
[root@redhat ~]# cat sorted_merge.txt
1
2
3
4
5
args1
[root@redhat ~]# sort -n num.txt >> sorted_merge.txt
[root@redhat ~]# sort -n args.txt >> sorted_merge.txt
[root@redhat ~]# cat sorted_merge.txt
1
2
3
4
5
args1
args2
args3
args4
args4
test
[root@redhat ~]# uniq -u args.txt
test
args1
args2
args3
[root@redhat ~]# vim info_txt
[root@redhat ~]# cat info_txt
No Name Score
1 zhang 20
2 li 80
3 wang 90
4 sun 60
[root@redhat ~]# sort -t " " -k2 info_txt
2 li 80
No Name Score
4 sun 60
3 wang 90
1 zhang 20
6、将26个小写字母的后13个字母替换成大写字母
将hello 123 world 456中的数字替换成空字符(提示使用通配符)
将hello 123 world 456中字母和空格替换掉,只保留数字(提示使用通配符)
[root@redhat ~]# vim 222
[root@redhat ~]# cat 222 | tr 'm-z' 'M-Z'
abcdefghijklMNOPQRSTUVWXYZ
[root@redhat ~]# vim 444
[root@redhat ~]# cat 444 | tr '123 456' ' '
hello world
[root@redhat ~]# cat 444 | tr -d 'hello world'
123456
7、wc命令使用:
给定文件:word_count.txt,里面填充10行内容
按字节去统计
按单词去统计
按行去统计
[root@redhat ~]# vim word_count.txt
[root@redhat ~]# wc -c word_count.txt
118 word_count.txt
[root@redhat ~]# wc -w word_count.txt
21 word_count.txt