Linux 搜索文件和文件夹的 4 种简单方法

Linux 管理员一天都不能离开搜索文件,因为这是他们的日常活动。了解一些搜索的东西是不错的,因为这能帮助你在命令行服务器中工作。这些命令记忆起来不复杂,因为它们使用的是标准语法。

可以通过四个 Linux 命令啦执行此操作,每个命令都有自己独特的功能。

方法 1:使用 find 命令在 Linux 中搜索文件和文件夹

find 命令被广泛使用,并且是在 Linux 中搜索文件和文件夹的著名命令。它搜索当前目录中的给定文件,并根据搜索条件递归遍历其子目录。

它允许用户根据大小、名称、所有者、组、类型、权限、日期和其他条件执行所有类型的文件搜索。

运行以下命令以在系统中查找给定文件。


1

2


# find / -iname "sshd_config"

/etc/ssh/sshd_config

运行以下命令以查找系统中的给定文件夹。要在 Linux 中搜索文件夹,我们需要使用 -type参数。


1

2

3

4

5


# find / -type d -iname "ssh"

/usr/lib/ssh

/usr/lib/go/src/cmd/vendor/golang.org/x/crypto/ssh

/usr/lib/go/pkg/linux_amd64/cmd/vendor/golang.org/x/crypto/ssh

/etc/ssh

使用通配符搜索系统上的所有文件。我们将搜索系统中所有以 .config 为扩展名的文件。


1

2

3

4

5

6

7

8

9


# find / -name "*.config"

/usr/lib/mono/gac/avahi-sharp/1.0.0.0__4d116c78973743f5/avahi-sharp.dll.config

/usr/lib/mono/gac/avahi-ui-sharp/0.0.0.0__4d116c78973743f5/avahi-ui-sharp.dll.config

/usr/lib/python2.7/config/Setup.config

/usr/share/git/mw-to-git/t/test.config

/var/lib/lightdm/.config

/home/daygeek/.config

/root/.config

/etc/skel/.config

使用以下命令格式在系统中查找空文件和文件夹。


1


# find / -empty

使用以下命令组合查找 Linux 上包含特定文本的所有文件。


1

2

3

4


# find / -type f -exec grep "Port 22" ‘{}‘ \; -print

# find / -type f -print | xargs grep "Port 22"

# find / -type f | xargs grep ‘Port 22‘

# find / -type f -exec grep -H ‘Port 22‘ {} \;

方法 2:使用 locate 命令在 Linux 中搜索文件和文件夹

locate 命令比 find 命令运行得更快,因为它使用 updatedb 数据库,而 find 命令在真实系统中搜索。

它使用数据库而不是搜索单个目录路径来获取给定文件。

locate 命令未在大多数发行版中预安装,因此,请使用你的包管理器进行安装。

数据库通过 cron 任务定期更新,但我们可以通过运行以下命令手动更新它。


1


$ sudo updatedb

只需运行以下命令即可列出给定的文件或文件夹。在 locate 命令中不需要指定特定选项来打印文件或文件夹。

在系统中搜索 ssh 文件夹。


1

2

3

4

5

6

7


# locate --basename ‘\ssh‘

/etc/ssh

/usr/bin/ssh

/usr/lib/ssh

/usr/lib/go/pkg/linux_amd64/cmd/vendor/golang.org/x/crypto/ssh

/usr/lib/go/src/cmd/go/testdata/failssh/ssh

/usr/lib/go/src/cmd/vendor/golang.org/x/crypto/ssh

在系统中搜索 ssh_config 文件。


1

2


# locate --basename ‘\sshd_config‘

/etc/ssh/sshd_config

方法 3:在 Linux 中搜索文件使用 which 命令

which 返回在终端输入命令时执行的可执行文件的完整路径。

当你想要为可执行文件创建桌面快捷方式或符号链接时,它非常有用。

which 命令搜索当前用户而不是所有用户的 $PATH 环境变量中列出的目录。我的意思是,当你登录自己的帐户时,你无法搜索 root 用户文件或目录。

运行以下命令以打印 vim 可执行文件的完整路径。


1

2


# which vi

/usr/bin/vi

或者,它允许用户一次执行多个文件搜索。


1

2

3

4

5


# which -a vi sudo

/usr/bin/vi

/bin/vi

/usr/bin/sudo

/bin/sudo

方法 4:使用 whereis 命令在 Linux 中搜索文件

whereis 命令用于搜索给定命令的二进制、源码和手册页文件。


1

2


# whereis vi

vi: /usr/bin/vi /usr/share/man/man1/vi.1p.gz /usr/share/man/man1/vi.1.gz

原文地址:https://www.cnblogs.com/ssming/p/10333039.html

时间: 2024-07-30 00:36:06

Linux 搜索文件和文件夹的 4 种简单方法的相关文章

c# 文件或者文件夹改名的最简单方法

使用cmd命令 ren Process.Start( "cmd", "/C " + "ren f:\\first c code.txt zhou.txt"); 原文地址:https://www.cnblogs.com/simadi/p/9435868.html

下载文件的一种简单方法js

我在做的一个项目有一部分要下载附件,可是我们公司用了一个包和网上的用response的解决方法冲突,而网上的js解决方法又用到了ActiveXObj我们经理不让用这个.还好我一个同事很利害用了一个很简单的方法,简单到我都吃惊了. window.open(url) /  window.open(url,'_parent'); 这个url是相对路径.比如说你在你的页面work/upload/prea里存储了xx.txt文件 那么下载的这个路径就是url="upload/prea里存储了xx.txt

php 下载保存文件保存到本地的两种实现方法

这里的下载,指的是 弹出下载提示框. 第一种: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 <?php function downfile() {  $filename=realpath("resume.html"); //文件名  $date=date("Ymd-H:i:m");  Header( "Content-type:  application/octet-stream ");  Header( &quo

百度网盘大文件直接下载与下载提速的简单方法

一张图让你了解百度这个企业有多恶心.立减0.46元还要贴个标签提示?消费200多差这几毛钱? 截图来自于度盘会员下单页,不吹不黑点进去自己看:https://pan.baidu.com/buy/checkoutcounter 不多吐槽了,开始教程吧. 一.度盘大文件直接下载 这是正常操作的结果,会提示安装客户端才能下载. 分析页面源码可以发现不过是个脚本检查,检查文件的大小,IF大于50M就弹出提示. 要绕过检查那么直接调用它最终的下载方法就可以了. 为了方便小白这里就直接贴出调用浏览器下载的代

教你一种简单方法给word和PDF格式的文件使用电子签名

  前言  虽然还处在非常时期,但很多公司已陆陆续续复工或准备复工.   上周,人事妹纸给了我们一份,企业员工健康情况申报表.具体如下 现在问题来了,需要本人签名,电脑打上去的不算,需要手写. 此时,我家附近打印店还未开门,也不想出门,虽然可以手抄,可是懒啊! 于是就找到了下面这种相对简单粗暴的方法 使用类似美图秀秀这类软件的涂鸦签名功能(绝对没有打广告,只是偶然发现可以这样操作) 首先把要填写的文档手机截图,然后打开美图秀秀,找到图片美化选项 接着在手机相册中选取文档截图,在下面工具栏中,往右

linux 让程序在后台运行的几种可靠方法

我们经常会碰到这样的问题,用 telnet/ssh 登录了远程的 Linux 服务器,运行了一些耗时较长的任务, 结果却由于网络的不稳定导致任务中途失败.如何让命令提交后不受本地关闭终端窗口/网络断开连接的干扰呢?下面举了一些例子, 您可以针对不同的场景选择不同的方式来处理这个问题. 先介绍一下hangup 名称的来由 在 Unix 的早期版本中,每个终端都会通过 modem 和系统通讯.当用户 logout 时,modem 就会挂断(hang up)电话. 同理,当 modem 断开连接时,就

宝塔Linux nginx http强制跳转https几种设置方法

最近很多人都比较关注SSL证书的申请与设置,春哥技术博客近期也为大家介绍了国内一些免费SSL证书申请流程及比较常用的VPS建站环境包如何安装配置SSL证书.希望有需要的朋友能成功为自己的站点安装SSL证书.在这里春哥为大家分享几种Nginx环境下强制http转https设置方法. 一.请先找准Nginx配置文件的位置: 其实配置文件位置不是很难找,一般是在/nginx/conf/vhost/目录下,文件命名一般是"你的域名.conf".下面介绍几种常用VPS控制面板Nginx配置文件的

linux下SVN忽略文件/文件夹的方法

linux下SVN忽略文件/文件夹的方法 假设想忽略文件temp 1. cd到temp所在的目录下: 2. svn propedit svn:ignore . 注意:请别漏掉最后的点(.表示当前目录),如果报错请看下面 3. 打开的文件就是忽略列表文件了(默认是空的),每一行是一项,在该文件中输入temp,保存退出 4. svn st查看状态,temp的?状态已经消除了 如果在svn propedit svn:ignore .时报错:svn: None of the environment va

Linux学习笔记(5)Linux常用命令之文件搜索命令

(1)find find命令用于文件搜索,所在路径/bin/find,其语法格式为: find [搜索范围] [匹配条件] 1)-name:根据文件名搜索,如搜索/etc下的init文件 [[email protected] ~]# find /etc/ -name init /etc/sysconfig/init /etc/kdump-adv-conf/kdump_initscripts/init /etc/init [[email protected] ~]# 注:-iname是不区分大小写