如何使用命令行在Linux中查找文件夹

时间:2020-01-09 14:17:08  来源:igfitidea点击:

如何使用bash命令行在Linux中查找文件和文件夹?
在Linux中查找文件夹的命令是什么?
您可以在Linux中使用find和find命令来从命令行查找文件夹和文件。
本教程显示如何使用各种命令行实用程序在Linux中搜索文件夹。

在Linux中查找文件夹的命令

  • find命令在目录层次结构中搜索文件和文件夹
  • find命令使用预建的数据库/索引按名称查找文件和文件夹

如何使用find命令在Linux上查找文件夹

语法为:

find /where/to/look/up/ criteria action
find /folder/path/to/look/up/ criteria action
find /folder/path/ -name "folder-name-here"
find /search/path/ -name "folder-name-here" -print
find /search/path/ -name "folder-name-here" -ls
find /folder/ -name "pattern"

查找一个名为Documents的文件夹

要在您的主目录($HOME,即/home/Hyman /主目录)中找到一个名为Documents的文件夹,请运行:

find $HOME -type d -name "Documents"

或者

find ~ -type d -name "Documents"

或者

find /home/Hyman/ -type d -name "Documents"

在Linux上执行find命令

如何搜索案例激励文件夹名称

您可以强制find命令将大写和小写字母解释为相同。
例如,通过传递-iname选项来匹配Documents,DOCUMENTS,DocuMEnts等:

find $HOME -type d -iname "Documents"

或者

find ~ -type d -iname "Documents"

或者

find /home/Hyman/ -type d -iname "Documents"

输出示例:

/home/Hyman/Documents
/home/Hyman/backups/Bills-PDF/Documents
/home/Hyman/backups/Documents
/home/Hyman/documents

如何在根(/)文件系统中搜索名为/etc /的文件夹

搜索/(root)文件系统时,需要以root用户身份运行find命令:

# find / -type d -name "etc"

或者

$ sudo find / -type d -name "etc"

或者

$ sudo find / -type d -iname "etc"

使用find命令时如何隐藏权限被拒绝的错误消息

查找结果将为您没有读取权限的每个目录/文件显示一条错误消息。
为了避免这些消息,在每个find命令的末尾追加2>/dev/null

$ find /where/to/look/ criteria action 2>/dev/null
$ sudo find / -type d -iname "etc" 2>/dev/null

如何找到名为python.projects的目录?

尝试:

find / -type d -iname "python.projects" -ls

或者

find / -type d -name "python.projects" -ls

也可以使用bash shell通配符,运行:

find / -type d -name "python.*"
sudo find / -type d -name "?ython.*"

了解查找命令选项

  • ``-name`:文件名的基础(删除前导目录的路径)与shell模式匹配。
  • ``-iname`:对给定的模式执行不区分大小写的搜索
  • ``-print`:在标准输出(通常是屏幕)上打印完整文件名,然后换行。
  • ``-ls`:在标准输出(即屏幕)上以ls -dils格式显示当前文件。
  • ``-d型:仅列出文件夹或目录。
  • ``-type f`:仅列出文件。

使用locate命令在Linux中搜索文件夹

要搜索确切命名为dir1(不是* dir1 *)的文件夹,请执行:

$ locate -b '\dir1'
$ locate -b '\folder2'

只需搜索与图片匹配的文件名,执行:

$ locate Pictures