当前位置:首页 » 文件管理 » 可以查看文件的类型
扩展阅读
4个瓶盖可以做什么手工 2024-11-23 21:24:03

可以查看文件的类型

发布时间: 2024-08-05 20:03:42

1. 如何查找文件/文件类型/属性

你应该咨询的是Linux系统下查找文件、文件类型、属性的方法吧:
-----查找文件
1、find名称查找文件格式:$ find [ PATH ] [ option ] [ action]
常用option如下:
-name fileName
-size [+-]SIZE #+表示大于 -表示小于
-type TYPE #TYPE为f/d/l/s/b/c
-perm mode #搜寻文档权限等于mode的文档,如$find ./ -perm 0755
-perm -mode #搜寻全部囊括mode权限的文档,如$find ./ -perm -0744 则会列出权限为4755、0744的所有文件,因为-rwsr-xr-x囊括了-rwxr--r--的属性,即拥有4755权限的文件一定拥有0744的权限
-perm +mode #搜寻包含任一mode权限的文档,例如$find ./ -perm +755 时,属性为-rw- --- ---的文件也会被列出来,因为他有rw的属性

与时间有关的option有-mtime/ctime/atime,这三者的区别请参考本博客的另一篇文章<atime/ctime/mtime的区别>
-mtime n n天之前的一天内被修改过的文件
-mtime +n n天之前(不含n)被修改过的文件
-mtime -n n天之内(含n)被修改过的文件

例如:
$find ./ -mtime 4
$find ./ -mtime -4
$find ./ -mtime +4
例2:
将过去24小时内修改过的文件列出
$find ./ -mtime 0 #0 表示现在
例3:$find / -perm +7000 -exec ls -l {} \;
说明:
{} 代表有find找到的内容
-exec一直到\;是关键词,代表find额外的动作的开始到结束,在这中间的就是find的额外动作
因为分号在bash环境下有特殊意义,这里的\主要是为了跳脱分号的特殊意义
例4:$find ./ -name '*http*' #find命令中可以使用通配符来寻档案名
2.locate命令查找文件格式:$ locate [-ir] Keyword
例1:找出所有文件名含有passwd的文档
$ locate passwd
/etc/passwd
/etc/passwd-
/etc/pam.d/passwd
/etc/news/passwd.nntp

3、whereis命令格式$ whereis [-bmsu] 文档名或目录名
-b 只查找binary格式的文档
-m 只查找在说明文件manual路径下的文件
-s 只找source来源档案
-u 搜索不在上述三个项目中的其他文件
区别:
find命令搜寻命令花的时间长,因为他直接在硬盘上搜索。
locate命令搜索时以数据库文档(/var/lib/mlocate/)中搜索得到的,不用直接去硬盘取数据,所以较快。
但是数据库的建立默认是在每天执行一次(即每天更新一次数据库),所以当你新建立起来档案后,在数据库更新前使用locate会找不到文件。
解决办法:可以使用updatedb命令更新数据库(这个命令一般会执行数分钟),然后再使用locate命令查询。
whereis命令也是根据数据库文档得到文件
根据上面的区别可知:一般我们先用locate 或whereis命令查找文件,在找不到的情况下才用find查找
-----查看文件的类型:file命令
-----查看文件的属性:lsattr命令

2. 有没有一款软件可以查看所有类型的文件∞

当然有!百页窗,它的万能查看器真的超牛!!几乎任何类型的文件都可以打开查看。有了这款工具就可以大大方便地查看多种类型文件,再不需要去专门下载相应的的文件查看器,另外节省了电脑的空间,真的超赞~