如何使用find命令查找Linux中的隐藏文件

这篇文章主要介绍“如何使用find命令查找Linux中的隐藏文件”,在日常操作中,相信很多人在如何使用find命令查找Linux中的隐藏文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用find命令查找Linux中的隐藏文件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

我们可以在Linux 或者 Unix 系统上使用 find 命令去查询所有(全部)隐藏文件

基本语法如下:

代码如下:

[root@dabu.info ~]#find  /要查找的文/件/夹/  -name  ".*"  -print

解释:

1. ".*" 表示要查找的文件名。因为linux / Unix 的隐藏文件和文件夹名是以 “ . ”开头的。而*表示通配符,意思是查找所有文件名和文件夹名中,以 "." 开始文件和文件夹。
2.-print 表示打印查找的结果。与 -ls 功能相同

或者

代码如下:

[root@dabu.info ~]#find   /要查找的文/件/夹/   -name  ".*"  -ls

或者只搜索隐藏的文件:

代码如下:

[root@dabu.info ~]#find  /要查找的文/件/夹/   -type  f   -iname  ".*"  -ls

或者只搜索隐藏的文件夹:

代码如下:

[root@dabu.info ~]#find  /要查找的文/件/夹/     -type  d  -iname  ".*"   -ls

解释:
-type :指定要搜寻的文件的类型,是文件夹还是文件等,要与f或d一起用
f :意思代表文件,文件的英文是file。
d : 就代表文件夹,文件夹的英文是 directory
-iname :表示匹配文件名的时候,忽略大小写。如,查找“fo*” ,则 “foo” ,"fOO"都会匹配。

或者

代码如下:

[root@dabu.info ~]#find  /要查找的文/件/夹/     -path  '*/.*'   -print</p> <p>[root@dabu.info ~]#find  /要查找的文/件/夹/     -path  '*/.*'   -ls


关于-path参数的解释,见另外一篇文章《find命令中-path 参数的作用(意思)解释》

在下面的例子中,查找 $HOME 下的所有隐藏的文件与文件夹($HOME就是用户的家目录,你可以用 (echo $HOME 命令来查看,你就明白意思了)

代码如下:

[root@dabu.info ~]#find   $HOME   -name   ".*"  -ls  #已经递归查询了

输出如下:

代码如下:


553607    4 -rw-r--r--   1 root     root          100 Sep 22  2004 ./.cshrc
6553664    4 -rw-------   1 root     root         1024 Nov 17 04:40 ./.rnd
6553604    4 -rw-r--r--   1 root     root           18 May 20  2009 ./.bash_logout
6553665    4 drwx------   2 root     root         4096 Dec 18  2012 ./.gnupg
6553671    0 -rw-------   1 root     root            0 Dec 18  2012 ./.gnupg/secring.gpg
6553669    0 -rw-------   1 root     root            0 Dec 18  2012 ./.gnupg/pubring.gpg~
6553673    4 -rw-------   1 root     root          899 Dec 18  2012 ./.gnupg/pubring.gpg
6553667    8 -rw-------   1 root     root         7856 Dec 18  2012 ./.gnupg/gpg.conf
6553668    4 -rw-------   1 root     root         1200 Dec 18  2012 ./.gnupg/trustdb.gpg
6553602   20 -rw-------   1 root     root        17462 Apr  7 10:55 ./.bash_history
6553610    4 drwx------   3 root     root         4096 Jan 16  2013 ./.config
6553660    4 drwx------   2 root     root         4096 Jan 16  2013 ./.config/htop
6553681    4 -rw-r--r--   1 root     root          597 Apr 11  2013 ./.config/htop/htoprc
6553723   12 -rw-------   1 root     root         9629 Mar 30 23:56 ./.viminfo
6553615    4 drwxr-xr-x   3 root     root         4096 Nov 29  2012 ./.original-configs

为了将结果存放到文本文件foo.txt中,使用输出重定向,命令如下:

代码如下:


[root@dabu.info ~]#find  $HOME   -name ".*"  -ls   >  foo.txt
[root@dabu.info ~]#cat foo.txt   #  查看foo.txt文件的内容,即find命令的运行结果

下面假设我要查看 /home/www/  下的隐藏文件与文件夹,并将结果保存至foo.txt。使用下面的命令:

代码如下:


[root@dabu.info ~]#find  /home/www/   -name  ".*"  -ls  > foo.txt

到此,关于“如何使用find命令查找Linux中的隐藏文件”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!