此文长期更新
对于这些命令,我们只记一些常用的选项
1.find 查找文件
-type 指定文件类型 f: 普通文件 d:目录
-exec 对前面查到的东西执行操作
-mtime -atime -ctime按照文件的修改时间 +n -n n(单位为天数)
-name 安装文件的名称搜索文件
例子:
find . -type f ! -name "file1.txt"
意思是:找出当前目录下,不叫file1.txt的普通文件
如果想要找出文件之后执行额外的操作,可以加上-exec选项,例如:
find . -type f -name "file1.txt" -exec mv {} /tmp \;
解释一下:该命令中的"{}"代指找到的文件,"\"是为了转义";"
支持通配符与正则,支持取反 "!"
2.xargs 从标准输入(管道或stdin、输入重定向)获取数据。并将数据转换成命令行的参数。
-n:指定每行输出的参数数量
[root@zrm tmp]# cat > file1.txt <<EOF
> 1 2 3 4
> 5 6 7 8
> 9 10 11 12
> EOF
[root@zrm tmp]# xargs < file1.txt
1 2 3 4 5 6 7 8 9 10 11 12
[root@zrm tmp]# xargs -n 4 < file1.txt
1 2 3 4
5 6 7 8
9 10 11 12
-i:绑定参数,具体用法如下
find . -type f -name "file1.txt"|xargs -i mv {} /tmp/file2.txt
解释一下:利用’-i‘选项,将前面管道符传过来的"file1.txt"与符号"{}"进行绑定。
拓展:选项“-I”(大写的i),可以绑定"[]"、"()"等这些符号。
单参数,则无需-i选项,如find . -type f|xargs rm -rf
3.stat 显示文件和文件系统状态(查看文件属性)
4.file 查看文件类型
5.last 查看用户登录信息 /var/log/wtmp
6.lastlog 显示最近登录的用户信息 /var/log/lastlog文件
7.df 查看文件系统磁盘空间的使用 ,-i inode -h human-readable
8.du 查看文件和目录大小 -sh -s size
9.ln +源文件 +目标链接文件 -s加参数表示软链接,不加参数表示硬链接
10.md5sum 用来做校验
每个文件的的md5校验码是保持不变的,除非检验的文件被修改过。
#查看测试文件
randolf@localhost:~/test $ ls
inittab sed.txt sed2.txt test.txt
#利用md5sum生成test.txt的校验码(相当于这个文件的指纹),并且保存到一个文本中,作为校验文本
randolf@localhost:~/test $ md5sum test.txt >test.md5
#利用选项-c测试源文件是否被改动过,ok表示未被改动
randolf@localhost:~/test $ md5sum -c test.md5
test.txt: OK
#现在我们向测试文本test.txt中添加一段话
randolf@localhost:~/test $ echo "wo shi shuai guo">>test.txt
#再次测试,提示一个校验码不匹配
randolf@localhost:~/test $ md5sum -c test.md5
test.txt: FAILED
md5sum: WARNING: 1 computed checksum did NOT match
#测试结束,是不是很好理解
在实际生活中md5校验码应用还是很广泛的,例如我们在mysql官网下载安装包时,往往还会提供一个校验文件,若校验出错,则说明这个安装包被动过,很可能被恶意篡改,包含木马病毒。