【Linux常用命令12】搜索命令及特殊字符的使用

which:查看可执行文件的位置

which 命令

whereis:查看文件的位置,只能用于程序名的搜索

whereis [选项] 命令
-b   定位可执行文件。
-m   定位帮助文件。
-s   定位源代码文件。
-u   搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。

find命令:用于在文件树中查找文件

find 路径 [选项] 文件名称
参数      含义
-name    按照文件名查找文件
-perm    按文件权限查找文件
-user    按文件属主查找文件
-group   按照文件所属的组来查找文件。
-type    查找某一类型的文件,诸如:b - 块设备文件d - 目录c - 字符设备文件l - 符号链接文件p - 管道文件f - 普通文件
-size n :[c] 查找文件长度为n块文件,带有c时表文件字节大小
-amin n   查找系统中最后N分钟访问的文件
-atime n  查找系统中最后n*24小时访问的文件
-cmin n   查找系统中最后N分钟被改变文件状态的文件
-ctime n  查找系统中最后n*24小时被改变文件状态的文件
-mmin n   查找系统中最后N分钟被改变文件数据的文件
-mtime n  查找系统中最后n*24小时被改变文件数据的文件
(用减号-来限定更改时间在距今n日以内的文件,而用加号+来限定更改时间在距今n日以前的文件。 )
-maxdepth n 最大查找目录深度
-prune 选项来指出需要忽略的目录。在使用-prune选项时要当心,因为如果你同时使用了-depth选项,那么-prune选项就会被find命令忽略
-newer 如果希望查找更改时间比某个文件新但比另一个文件旧的所有文件,可以使用-newer选项
#示例:
find . -name "*.c"  #将当前目录及其子目录下所有文件后缀为 .c 的文件列出来
find . -type f      #将当前目录及其子目录中的所有文件列出
find . -ctime  20   #将当前目录及其子目录下所有最近 20 天内更新过的文件列出
find /var/log -type f -mtime +7 -ok rm {} \; #查找 /var/log 目录中更改时间在 7 日以前的普通文件,并在删除之前询问它们
示例:
使用-name参数查看/etc目录下面所有的.conf结尾的配置文件:
[root@linuxcool ~]# find /etc -name "*.conf
使用-size参数查看/etc目录下面大于1M的文件:
[root@linuxcool ~]# find /etc -size +1M
在/var/log目录下忽略大小写查找以.log结尾的文件名:
[root@linuxcool ~]# find /var/log -iname "*.log"
在当前目录下查找超过七天内被访问过的所有文件:
[root@linuxcool ~]# find . -type f -atime +7
在当前目录下查找访问时间超过10分钟的所有文件:
[root@linuxcool ~]# find . -type f -amin +10
找出/home下不是以.txt结尾的文件:
[root@linuxcool ~]# find /home ! -name "*.txt"
在整个文件系统中找出所有归属于 linuxprobe 用户的文件并复制到 /root/findresults 目录:
[root@linuxprobe ~]# find / -user linuxprobe -exec cp -a {} /root/findresults/
查找 /var/log 目录中更改时间在 7 日以前的普通文件,并删除
find /var/log -type f -mtime +7 -exec rm -f {}

输出重定向中用到的符号及其作用

命令 > 文件:将标准输出重定向到一个文件中(清空原有文件的数据)
命令 2> 文件:将错误输出重定向到一个文件中(清空原有文件的数据)
命令 >> 文件:将标准输出重定向到一个文件中(追加到原有内容的后面)
命令 2>> 文件:将错误输出重定向到一个文件中(追加到原有内容的后面)
命令 &>> 文件:将标准输出与错误输出共同写入到文件中(追加到原有内容的后面)

管道符命令 | :把前一个命令原本要输出到屏幕的数据当作是后一个命令的标准输入

格式为:命令 A | 命令 B
匹配关键词/sbin/nologin 找出了所有被限制登录系统的用户:
[root@linuxprobe ~]# grep "/sbin/nologin" /etc/passwd | wc -l
用翻页的形式查看/etc 目录中的文件列表及属性信息:
[root@linuxprobe ~]# ls -l /etc/ | more
用一条命令来完成密码重置:
[root@linuxprobe ~]# echo "linuxprobe" | passwd --stdin root

命令行的通配符

星号(*)代表匹配零个或多个字符
问号(?)代表匹配单个字符
中括号内加上数字[0-9]代表匹配 0~9 之间的单个数字的字符,而中括号内加上字母[abc]则是代表匹配 a、b、c 三个字符中的任意一个字符

示例:
匹配所有在/dev 目录中且以 sda 开头的文件:
[root@linuxprobe ~]# ls -l /dev/sda*
查看文件名为 sda 开头,但是后面还紧跟其他某一个字符的文件的相关信息:
[root@linuxprobe ~]# ls -l /dev/sda?

常用的转义字符

反斜杠\:使反斜杠后面的一个变量变为单纯的字符串。
单引号‘:转义其中所有的变量为单纯的字符串。
双引号“:保留其中的变量属性,不进行转义处理。
反引号`:把其中的命令执行后返回结果。

示例:
定义一个名为 PRICE 的变量并赋值为 5,然后输出以双引号括起来的字符串与变量信息
[root@linuxprobe ~]# PRICE=5
[root@linuxprobe ~]# echo "Price is $PRICE"
Price is 5
要想让第一个"$"乖乖地作为美元符号,那么就需要使用反斜杠(\)来进行转义,将这个命令提取符转义成单纯的文本,去除其特殊功能:
[root@linuxprobe ~]# echo "Price is \\$$PRICE" 
Price is $5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/109070.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python 中的省略号对象

作为一名经验丰富的 Python 开发人员,您可能遇到过 Python 中的三个点…省略号对象。 如果您尝试在 Python 解释器中打印此内容,它将显示一个省略号。 本篇文章将介绍 Python 中省略号对象的使用。 使用省略号作为未编写代码的占位符 省略号对象可以以…

【vue2高德地图api】02-npm引入插件,在页面中展示效果

系列文章目录 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、安装高德地图二、在main.js中配置需要配置2个key值以及1个密钥 三、在页面中使用3.1 新建路由3.2新建vue页面3.2-1 index.vue3.2…

基于RuoYi-Flowable-Plus的若依ruoyi-nbcio支持自定义业务表单流程的集成方法与步骤(一)

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 由于大家最自定义业务表单的整个集成方法还不熟悉,下面大概介绍一下这个流程与方法。 1、首先…

2.2 如何使用FlinkSQL读取写入到文件系统(HDFS\Local\Hive)

目录 1、文件系统 SQL 连接器 2、如何指定文件系统类型 3、如何指定文件格式 4、读取文件系统 4.1 开启 目录监控 4.2 可用的 Metadata 5、写出文件系统 5.1 创建分区表 5.2 滚动策略、文件合并、分区提交 5.3 指定 Sink Parallelism 6、示例_通过FlinkSQL读取kafk…

【MySQL】索引介绍、索引的数据结构

🐌个人主页: 🐌 叶落闲庭 💨我的专栏:💨 c语言 数据结构 javaEE 操作系统 Redis 石可破也,而不可夺坚;丹可磨也,而不可夺赤。 索引 一、索引概述二、索引结构2.1 BTree2.…

【论文阅读】 Cola-Dif; An explainable task-specific synthesis network

文章目录 CoLa-Diff: Conditional Latent Diffusion Model for Multi-modal MRI SynthesisAn Explainable Deep Framework: Towards Task-Specific Fusion for Multi-to-One MRI Synthesis CoLa-Diff: Conditional Latent Diffusion Model for Multi-modal MRI Synthesis 论文…

使用vscode + vite + vue3+ element3 搭建vue3脚手架

技术栈 开发工具:VSCode 代码管理:Git 前端框架:Vue3 构建工具:Vite 路由:vue-router 状态管理:vuex AJAX:axios UI库:element-ui 3 数据模拟:mockjs css预处理&#xf…

【c++】跟werbtc学容器:unordered_set

1 std::unordered_set 元素无特定顺序的hash容器 D:\XTRANS\m98_rtc\ndrtc-webrtc\src\third_party\protobuf\src\google\protobuf\descriptor.cc#define HASH_MAP std::unordered_map #define HASH_SET std::unordered_set #define HASH_FXN

机器学习方法之k近邻方法的综述

机器学习方法之k近邻方法的综述 前言k近邻方法的相关综述最近邻方法k近邻方法加权k近邻方法kknn程序包的介绍前言 本篇博客的目的是想用最简单的话讲清楚k近邻方法,欢迎大家在评论区提出你们的看法,你们的批评是我前进的动力。 k近邻方法的相关综述 在统计识别领域k近邻方法…

手机爬虫用Appium详细教程:利用Python控制移动App进行自动化抓取数据

Appium是一个强大的跨平台工具,它可以让你使用Python来控制移动App进行自动化操作,从而实现数据的抓取和处理。今天,我将与大家分享一份关于使用Appium进行手机爬虫的详细教程,让我们一起来探索Appium的功能和操作,为手…

SQL实现自定义排序

业务事实上,经常会遇到排序问题,对数值类型字段排序不会有很大争议,但是有时希望对字符型字段按要求进行排序。本文记录自定义排序的几种方法。 使用case when关键字进行限定 本方法思路是将希望排序小的字符取值为较小的数字。注意end后面…

Three.js图案溶解shader

上图提供两种方式溶解显示 上面一排是根据现实的图案红色通道也就是r值进行溶解 下面一排提供额外的溶解纹理 可以通过简单更改呈现多种溶解图案 代码仓库 gitee b站账号:https://space.bilibili.com/374230437 interface IMapPath {map: string;dissolve?: string…

【C/C++】静态库和动态库命名规范及最佳实践

在软件开发中,静态库和动态库是常用的代码复用形式。为了保持良好的代码组织和可维护性,以及遵循统一的命名规范是非常重要的。本文将介绍静态库和动态库的命名规范,并提供一些最佳实践,以帮助开发人员在项目中正确命名库文件。 …

3-k8s-镜像仓库harbor搭建

文章目录 一、概念二、安装harbor三、使用harbor仓库 一、概念 官方概念:Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器。 我们平时拉去镜像都是从线上仓库拉去,但是企业内部的镜像一般都不会随意传到网上,而是保存在自己公…

flutter开发实战-防抖Debounce与节流Throttler实现

flutter开发实战-防抖Debounce与节流Throttler实现 在开发中,经常遇到某些按钮或者界面操作需要做防抖或者节流操作。这里记录一下实现。 一、防抖Debounce与节流Throttler 防抖Debounce 当有可能在短时间内对一个方法进行多次调用时,需要防抖&#…

GO 工程下载依赖操作流程(go mod)

1. 写一个main.go文件 package main import ("fmt""net/http""github.com/ClickHouse/clickhouse-go" ) func main() {fmt.Println("服务启动......")http.HandleFunc("/hello", func(w http.ResponseWriter, r *http.Requ…

基于springboot实现酒店管理系统平台项目【项目源码+论文说明】计算机毕业设计

摘要 21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识,科学化的管理,使信息存…

如何优化模型渲染性能

1、提高模型渲染性能的好处 优化模型渲染性能有以下几个好处: 提高用户体验:良好的模型渲染性能可以使图形应用程序更加流畅和响应快速。当模型以较高的帧率渲染时,用户可以获得更流畅、更真实的视觉效果,提升整体的用户体验。 …

Qt 为Android app添加系统签名

Qt 为Android app添加系统签名 flyfish 一 环境 lsb_release -aNo LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 23.04 Release: 23.04 Codename: lunarQt Creator 10.0.2 构建套件 Qt 6.5.1 Clang arm64-v8a 二 运行Qt 如果没有Qt图标 在终端…

使用PM2部署spring-boot项目

一、打包应用 1、先清理之前的 2、修改pom.xml文件关于项目名称版本及jdk版本 3、在idea中直接打包项目 4、等打包完成后会在target文件夹下有一个xx.jar的文件,拷贝出来放到一个文件夹下,或者服务器指定目录下 二、使用pm2部署.jar文件 1、pm2的安装,参考地…