大量示例彻底搞懂Linux查找,which,whereis,locate,find

Linux文件搜索核心:find与locate的原理、盲区与协同策略 Linux文件搜索并非简单命令调用,而是涉及VFS内核交互、索引机制与权限模型的系统工程。find基于实时遍历与系统调用实现精确匹配,适用于开发调试、安全分析等强时效场景;locate依托mlocate数据库实现毫秒响应,但受更新延迟、PRUNEPATHS过滤和大小写敏感等限制。二者本质是‘实时精确’与‘极速模糊’的技术互补,需结合使用——如先用locate -i快速定位路径,再以find验证时效性与执行深度操作。理解其底层差异(如readdir()扫描 vs n-gram索引)、典型盲区(/tmp默认被排 阅读详情

stdio: /usr/include/stdio.h /usr/share/man/man3/stdio.3.gz

同样地,它不能查找到内置命令。

大量示例彻底搞懂Linux查找,which,whereis,locate,find

type

========

type用于查看命令类型,一般有以下类型:

alias:别名

keyword:关键字

builtin:内置命令

file:外部命令

而常见参数如下:

-t 输出类型名,如file

-p 如果是外部命令,则显示其所在路径

-a 对于外部命令,它会显示命令路径,命令类型等信息

我们来看几个例子:

type ls #ls是一个别名

ls is aliased to `ls --color=auto’

type cd #cd是一个内置命令

cd is a shell builtin

type find

find is /usr/bin/find

type function #function是一个shell关键字

function is a shell keyword

type -a which #显示所有路径

which is /usr/bin/which

which is /bin/which

locate

==========

前面所说的命令都限于查找命令,帮助手册或源文件,而locate用于快速查找任何文件。它从一个系统数据库进行文件查找,而不需要遍历磁盘,因此速度极快。通常该系统数据库每天更新一次(可以查看系统的/etc/cron.daily/mlocate,不同系统可能不一样)。

常见选项如下:

-e 仅查找存在的文件

-q 安静模式,不会显示任何错误讯息

-n 至多显示 n个输出

-r 使用正规运算式

-i 查找忽略大小写

-c 打印匹配结果数量

假设当前目录早已存在以下文件:

locate.txt locate.log LOCATE.zip

我们来看一些实例。

快速查找文件

locate locate.txt #查找locate.txt

/home/hyb/workspaces/shell/locate/locate.txt

查找存在的文件

locate locate.txt #查找之前删除locate.txt

#虽然文件不存在,但是仍然被查找出来

/home/hyb/workspaces/shell/locate/locate.txt

locate -e locate.txt #-e参数可以查找只存在的文件

(由于该文件不存在,因此也不会被查找出来)

查找计算文件的数量

locate -c locate.log #只计算查找到的数量

1

忽略大小写查找

locate -i locate.zip

/home/hyb/workspaces/shell/locate/LOCATE.zip

使用正则表达式

普通的查找是模糊匹配的,因此只要目标名称中包含要搜索的名称,都会被搜索出来,但是我们可以利用正则表达式,来精确查找。

locate -r /locate.log$ #查找以/locate.log结尾的文件

结合正则表达式,locate有更丰富的查找方式,这里不展开。

locate查找存在的一个问题是,如果最近有文件被删除,它仍然能找出来,最近有文件增加,它却找不到。也就是说,它的查找并不具备实时性。当然我们可以手动执行updatedb命令来更新数据库(可能需要root权限)。

大量示例彻底搞懂Linux查找,which,whereis,locate,find

find

========

find命令是linux下一个强大的查找命令。与locate命令相比,它需要遍历磁盘文件,因此查找速度较慢,但正因如此,它的实时性比locate好得多。另外一方面,find命令的查找条件比locate丰富得多。

以名称为条件

最常用的恐怕就是以文件名为条件了,涉及参数-name,-iname,例如:

当前目录下查找以sort开头的文件:

find ./ -name “sort*”

./sort4.txt

./sort2.txt

./sort3.txt

./sort.txt

find ./ -iname “SORT.txt” #忽略大小写

./sort.txt

以权限为条件

有时候需要查找特定权限的文件,可以使用-perm参数,例如查找当前目录下权限为777的文件:

find ./ -perm 777

./test

./sort.txt

以文件类型为条件

涉及参数-type,例如要查找当前目录下的符号链接文件:

find ./ -type l

./test

ls -al test

lrwxrwxrwx 1 hyb hyb 8 11月 24 10:10 test -> home.zip

主要类型有:

  • f 普通文件

  • d 目录

  • b 块设备文件

  • c 字符设备文件

  • l 符号链接

  • s 套接字

  • p 管道文件

以文件大小为条件

涉及参数-size,例如:

find ./ -size 1k #查找当前目录下小于1k的文件

./test

./sort4.txt

./sort2.txt

./sort3.txt

./test.sh

./sort.txt

find -size +1M #查找当前目录下大于1M的文件

./test.zip

常用单位有:

  • k 千字节

  • M 兆字节

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
img

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img

片转存中…(img-aBe9uizu-1712897388980)]

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

[外链图片转存中…(img-SH2Qj4xU-1712897388980)]

给大家整理的电子书资料:

[外链图片转存中…(img-8zUhd5hV-1712897388980)]

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-df4PVsDM-1712897388981)]

卫星测试科普(三):卫星载荷的核心测试设备探秘 总的说来,卫星芯片与元器件,部组件与单机,整机与子系统,系统与整星的设计、定型、制造、验证、总装、发射、在轨等环节都离不开各种测试场景,对于这些卫星测试场景而言,“射频三大件”与高速数字示波器是构成强大测试系统的基础。卫星通信信号生成:覆盖Ka、Q等波段,具备扫频、脉冲、数字调制、噪声信号、雷达信号、数据链信号、OFDM 等多种信号库,用于测试和验证卫星电子设备的电气性能、频率响应、抗干扰能力等。卫星的通信需要高效、快速地传输大量数据,高速信号的质量至关重要,如果卫星信号不佳,卫星就会出现故障或者隐患。 阅读详情

相关推荐

Android开发中StateFlow与LiveData的5个关键区别及实战避坑指南

本文深度解析了Android开发中StateFlow与LiveData的5个核心区别,包括设计哲学、生命周期管理、值更新策略、线程模型及协程生态整合。通过实战代码对比,为开发者在现代MVVM架构下的状态管理选型提供清晰的决策指南和避坑建议,帮助构建更健壮、可测试的应用。

weixin_29012677的博客 405

linux命令之whereis和which

Linux whereis命令用于查找文件。该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。 Linux which命令用于查找文件。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。

月生的静心苑 4341

GEE入门之路(从【初学者】角度,大白话)——附海面风速插值代码

非常初级的GEE入门教程!大白话!有手就行!附海面风速插值代码,克里金插值,时间插值。

weixin_46812066的博客 4086

Linux之whereis、which

Linux之whereis、which 文章目录 前言 一、whereis命令 二、which 总结 一、whereis命令 whereis可以帮助快速的找到某个命令的二进制文件、帮助页面、源码所在路径。 命令名称:whereis 命令全称:locate the binary, source, and manual page files for a command 所在路径:/usr/bin/whereis 执行权限:所有用户 功能描述:查找某命令...

5G砖家的博客 614

【AAAI 2025】轻量级特征增强新范式!FCM 模块助力小目标检测,即插即用提升模型泛化能力

本文介绍了AAAI 2025提出的轻量级特征增强新范式FCM模块,它通过显式分离并双向交互语义与空间特征,有效解决了小目标检测中特征信息失配的核心难题。该模块设计精巧,计算开销极低,能够即插即用式地嵌入YOLO等主流检测网络,显著提升模型对小目标的泛化检测能力,尤其适用于遥感、自动驾驶等对计算资源敏感的实际场景。

weixin_29056145的博客 289

Java utgard连接OPC问题记录

怎么开启是个问题, 是在引入openscada的jar包里的Sever类中修改,这就犯难了, 其实没必要, 只要在自己项目下创建与openscada中Server类相同的路径,并复制Server过去改就行了, 项目会优先使用本地类,像下面这样。奇迹发生了,0x00000005解决. 注: 我的安全补丁编码跟网上查到的并不一样, 所以最初没有删,后来全都删了就好了,这个编码规则咱也不知道.安全日志中记录用户登录行为, OPC通信需要使用Windows系统用户进行登录, 如果用户名密码错误这里会有相关记录.

wangxin1949的博客 2841

linux命令-whereis与which命令详解

whereis 和 which 都是 Linux 中用于定位命令的工具。whereis 是“全能档案员”,专门查找命令的二进制文件、手册页和源码;which 是“路径追踪器”,只回答一个问题。

鸭梨山大。 1525

【深度学习】通俗易懂讲解循环神经网络LSTM

目录 1、循环神经网络(Recurrent Neural Networks) 2、长依赖存在的问题 3、LSTM 网络 4、LSTMs的核心思想 5、一步一步理解LSTM 6、LSTM的变种 7、总结 1、循环神经网络(Recurrent Neural Networks) 人对一个问题的思考不会完全从头开始。比如你在阅读本片文章的时,你会根据之前理解过的信息来理解下面看到的文字。...

Nieson2012的专栏 2731

Linux学习[9]查找文件指令:which & whereis & locate & find

之前在弄交叉编译的时候需要找到gcc,gdb什么的在哪里;涉及到了查找文件指令。这里对linux中的查找指令进行总结这篇文章大体都是以书上为主,个人见解较少,因为实际运用中find暂时用的还不多,都是用whereis来替代,或者使用图形化界面来查找。

Edwinwzy的博客 1561

OTP语音芯片SOP8的前世今生_如九齐_硕呈_钰绅等以及国产方案KT148A

语音芯片ic的其中一个品类,就是SOP8封装的OTP语音芯片,非常的经典和常用。源头的供应商基本都是台系的原厂,比如:九齐、硕呈、佑华等等,其中佑华就算是鼻祖了,早期的4位机也是在语音市场得到了升华。 OTP(One Time Programmable)是单片机的一种存储器类型,意思是一次性可编程:程序烧入单片机后,将不可再次更改和清除。

qyvhome的博客 1873

从硬件拆解到图像生成:一次搞懂MRI设备(主磁体、梯度线圈、射频系统)是如何协同工作的

本文深入解析MRI设备的三大核心系统——主磁体、梯度线圈和射频系统如何协同工作,实现从量子现象到诊断图像的转化。通过详细的技术参数和临床案例,揭示磁共振成像(MRI)在医疗图像处理中的精密工程原理和最新技术突破,帮助读者全面理解这一现代医学影像技术的运作机制。

weixin_33734785的博客 551

Linux命令定位与查找:which、whereis和find的用法详解

本文介绍了Linux系统中常用的三个命令:which、whereis和find,它们用于定位和查找文件。通过which命令我们可以快速定位可执行文件的位置,whereis命令可以查找二进制、源代码和帮助文档等文件,而find命令则可以在指定目录下搜索文件。本文详细介绍了这三个命令的使用方法、选项以及适用场景,并比较了它们的异同和优缺点。最后,还通过一个实际案例演示了如何使用这些命令来定位系统中安装的Java可执行文件。

qq_41308872的博客 1万+

Calibre 3Dstack Flow Example(5-2)

本文详细介绍了Calibre3DSTACK工具在3D-IC设计验证中的应用。主要内容包括:1)连通性检查(LVS)规则编写,重点说明connected命令的使用方法和多文本标签处理;2)设计规则检查(DRC)实现,涵盖层间距检查和焊盘重叠检查;3)系统网表生成器操作流程,从芯片导入到网连通性定义;4)两种规则文件语法(扩展语法和传统语法)的编写示例;5)验证报告文件格式解析。通过具体案例演示了如何建立完整的3D-IC验证流程,包括芯片定义、装配操作、电气连接验证和物理规则检查等关键步骤,为3D-IC设计验证

u013620135的博客 2337

【Linux进阶篇】Linux查找命令大比拼:which/whereis/locate,该用哪个一眼分清

本文系统讲解了Linux文件查找与链接的核心知识点。首先介绍了find命令的高级用法,包括按名称、时间、大小精准查找文件的技巧。其次对比分析了which、whereis和locate三个查找命令的区别与适用场景。重点解析了软链接和硬链接的核心区别,从inode、磁盘空间、跨分区支持到删除影响四个方面进行对比,并给出实战代码演示。最后总结了这些命令的应用场景,帮助读者在开发和运维中灵活运用。全文包含大量可直接复用的代码示例,适合不同水平的Linux用户学习参考。

m0_58782205的博客 833

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

大量示例彻底搞懂Linux查找,which,whereis,跳槽大厂必看

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

2401_84254451的博客 1056

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Linux命令which,whereis,locate,find的区别

简单介绍Linux命令which,whereis,locate,find的区别。

小人物大青春的博客 1749

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

大量示例彻底搞懂Linux查找,which,whereis,Linux运维开发入门基础教程

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

2401_84140628的博客 871

【文本位置查找】Linux中查找文件位置的命令,find、locate、whereis、which和type

本文介绍在Linux下,查找文件位置的五种命令:find、locate、whereis、which和type。

Xminyang的博客 1754

Linux笔记之文件查找和搜索命令which,find,locate,whereis总结

但是新建的文件,由于没有马上同步到LINUX文件数据库里,这样,刚新建的文件通过locate可能查找不到,需要用updatedb手动执行同步,或者待LINUX系统自动执行任务后才可以找到。locate 适合简单快速的文件定位。搜索范围:which 只在 PATH 中搜索,而 whereis 在系统目录中搜索。准确性:find 更准确实时,locate 依赖于数据库的更新频率。附:locate命令查找文件是通过LINUX文件数据库去查找,速度:locate 更快,find 相对较慢。

小勇博客 874

Linux which、whereis、locate、find命令

一、which、whereis、locate、find的区别 命令 说明 which 常用于查找可直接执行的命令。只能查找可执行文件,该命令基本只在$PATH路径中搜索,查找范围最小,查找速度快。默认只返回第一个匹配的文件路径,通过选项 -a 可以返回所有匹配结果 whereis 不只可以查找命令,其他文件类型都可以(man中说只能查命令、源文件和man文件,实际测试可以查大多数文件)。在$PATH路径基础上增加了一些系统目录的查找,查找范围比which稍大,查找速度快。可以通过

lichao920926的博客 453

linux命令which,whereis,locate,find的区别

linux命令which,whereis,locate,find的区别 which:常用于查找可直接执行的命令。只能查找可执行文件,该命令基本只在$PATH路径中搜索,查找范围最小,查找速度快。默认只返回第一个匹配的文件路径,通过选项 -a 可以返回所有匹配结果。 whereis:不只可以查找命令,其他文件类型都可以(man中说只能查命令、源文件和man文件,实际测试可以查大多数文件)。在$PATH路径基础上增加了一些系统目录的查找,查找范围比which稍大,查找速度快。可以通过 -b 选项,限定只搜索二

IT_like_sea的博客 583

大量示例彻底搞懂Linux查找,which,whereis(2),2024年最新带你快速通过字节跳动面试

locate查找存在的一个问题是,如果最近有文件被删除,它仍然能找出来,最近有文件增加,它却找不到。与locate命令相比,它需要遍历磁盘文件,因此查找速度较慢,但正因如此,它的实时性比locate好得多。普通的查找是模糊匹配的,因此只要目标名称中包含要搜索的名称,都会被搜索出来,但是我们可以利用正则表达式,来精确查找。locate -r /locate.log$ #查找以/locate.log结尾的文件。locate -e locate.txt #-e参数可以查找只存在的文件。

2401_84254451的博客 882

重设 root 密码 file命令 locate文件查找 find grep whereis

重设 root 密码 1)重启虚拟机 server,出现 GRUB 启动菜单时按 e 键进入编辑状态 2)找到 linux16 所在行,末尾添加 rd.break console=tty0,按 Ctrl+x 键进恢复模式 3)以可写方式挂载硬盘中的根目录,并重设 root 密码: switch_root:/# mount -o remount,rw /sysroot ...

570588398 528

Linux系统下which, whereis, locate的用法

Linux系统下可以通过which, whereis, locate等命令来查找文件、程序的所在位置。 1 which 通过which命令查找可执行文件/命令的位置,比如 $ which ls 查找ls命令所对应的执行文件位置,结果显示/bin/ls,/bin目录包含了大部分Linux指令的执行程序。 $ which python 结果显示 /home/ubuntu/anaconda3/bin/python 表示python命令对应的程序,这里通过anaconda3安装,显示执行文件在ana

星光 2720

大量示例彻底搞懂Linux查找,which,whereis(1),2024年最新看了这篇文章我才真正理解了

locate查找存在的一个问题是,如果最近有文件被删除,它仍然能找出来,最近有文件增加,它却找不到。与locate命令相比,它需要遍历磁盘文件,因此查找速度较慢,但正因如此,它的实时性比locate好得多。普通的查找是模糊匹配的,因此只要目标名称中包含要搜索的名称,都会被搜索出来,但是我们可以利用正则表达式,来精确查找。locate -r /locate.log$ #查找以/locate.log结尾的文件。locate -e locate.txt #-e参数可以查找只存在的文件。

2401_84254451的博客 673
上一篇: 大神教你如何构建面向应用的运维管理新思维_以应用为核心 运维
下一篇: 天天使用MySQL,你知道MySQL数据库能抗多少压力吗?附(真实案例)_mysql读写qps
普通网友
博客等级 码龄5年 4697粉丝 610原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值