当前位置: 首页 > news >正文

通配符用法

在本篇文章中,本文将说明通配符用法。

(1)概述

通配符是在Linux命令中用于匹配文件名的特殊字符。它们可以帮助我们快速定位和操作文件。本文将介绍一些常用的通配符及其示例用法。

通配符是一种用于模式匹配的特殊字符。在计算机领域中,通配符通常用于文件名匹配和搜索操作中。它们允许你根据特定的模式来匹配文件名或字符串,从而进行更灵活和方便的匹配操作。

(2)常见通配符及作用:

符号作用
*匹配任意长度的任意字符序列。例如,file*可以匹配file1file2file123等。
?匹配单个字符。例如,file?.txt可以匹配file1.txtfile2.txt等。
[ ]匹配指定范围内的字符。可以使用单个字符或字符范围。例如,[abc]可以匹配abc[0-9]可以匹配任意数字。
[^ ]匹配不在指定范围内的字符。例如,[^abc]可以匹配除了abc之外的任何字符。
{ }创建多个模式的组合。可以使用逗号分隔多个模式。例如,{file1,file2}.txt可以匹配file1.txtfile2.txt
~匹配用户的主目录。例如,~/Documents表示当前用户的Documents目录。
.匹配任意单个字符。在文件名中使用.需要进行转义,即使用\.。例如,file\.txt可以匹配file.txt
+匹配前一个字符的一个或多个实例。例如,file+可以匹配filefileefileee等。
``反引号,用于引用命令结果
()创建子模式。可以使用括号将模式组合在一起。

这些通配符符号在Linux系统中经常用于文件名匹配和模式匹配。

(3)常用示例

1. 使用通配符匹配文件名

通配符在命令行中也可以用于匹配文件名。例如,要列出当前目录下所有以.txt结尾的文件,可以执行以下命令:

ls *.txt

输出:

1.txt  test1.txt  test2.txt  test.txt

这将输出所有以.txt结尾的文件名。

2. 使用反引号执行命令替换

反引号可以用于执行命令替换。例如,要创建以当前日期命名的.txt文件,可以执行以下命令:

touch `date +%F`.txtls *.txt

输出:

1.txt  2023-12-12.txt  test1.txt  test2.txt  test.txt

这将创建一个以当前日期命名的.txt文件。

3. 结合find命令搜索指定深度的文件夹

要搜索指定深度的文件夹,可以使用find命令的-maxdepth参数。例如,要在/tmp/tmp1/tmp2目录下搜索深度为3的文件夹内所有文件,可以执行以下命令:

mkdir -p /tmp/tmp1/tmp2touch /tmp/tmp1/tmp2/666.txtfind /tmp/tmp1/tmp2 -maxdepth 3 -type f -name "*"  

输出:

/tmp/tmp1/tmp2/666.txt
4. 结合find命令匹配特定模式的文件

find命令还可以使用正则表达式匹配特定模式的文件。例如,要找出/tmp目录下以任意一位数字开头且以非数字结尾的文件,可以执行以下命令:

find /tmp -type f -regex '.*/[0-9][^0-9]*'

输出:

/tmp/1.txt
/tmp/tmpp1/2
/tmp/tmpp1/3
/tmp/tmpp1/1.sh
/tmp/tmpp1/2.sh
/tmp/tmpp1/3.sh
/tmp/tmpp1/4.sh
  • [0-9]匹配任意一位数字,
  • [^0-9]匹配任意非数字字符,
  • *表示行尾。

这个命令会找到以数字开头且以非数字结尾的文件。

5. 结合find命令复制特定模式的文件

要复制以非字母开头的文件到指定目录下,可以使用find命令结合-exec参数。例如,要将/usr/local目录下以非字母开头的文件复制到/tmp/tmpp1/目录下,可以执行以下命令:

find /usr/local -type f ! -name '[a-zA-Z]*' -exec cp {} /tmp/tmpp1/ \;

这个命令使用find命令查找/usr/local目录下不以字母开头的文件,并使用-exec参数将它们逐个复制到/tmp/tmpp1/目录下。

(4)总结

本文介绍了一些常用的通配符及其示例用法。掌握这些通配符可以帮助我们更高效地在Linux系统中定位和操作文件。希望这些示例对你有所帮助!

相关文章:

通配符用法

在本篇文章中,本文将说明通配符用法。 (1)概述 通配符是在Linux命令中用于匹配文件名的特殊字符。它们可以帮助我们快速定位和操作文件。本文将介绍一些常用的通配符及其示例用法。 通配符是一种用于模式匹配的特殊字符。在计算机领域中&am…...

如何从eureka-server上进行服务发现,负载均衡远程调用服务

在spring cloud的maven的pom文件中添加eureka-client的依赖坐标 <!--eureka-client依赖--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependen…...

Flutter实现Android拖动到垃圾桶删除效果-Draggable和DragTarget的详细讲解

文章目录 Draggable介绍构造函数参数说明使用示例 DragTarget 介绍构造函数参数说明使用示例 DragTarget 如何接收Draggable传递过来的数据&#xff1f; Draggable介绍 Draggable是Flutter框架中的一个小部件&#xff0c;用于支持用户通过手势拖动一个子部件。它是基于手势的一…...

Nacos和Eureka冲突问题原因分析

目录 一、问题现象二、解决办法三、原因分析 一、问题现象 Description:Field autoServiceRegistration in org.springframework.cloud.client.serviceregistry.AutoServiceRegistrationAutoConfiguration required a single bean, but 2 were found:- eurekaAutoServiceRegis…...

『C++成长记』拷贝构造函数

&#x1f525;博客主页&#xff1a;小王又困了 &#x1f4da;系列专栏&#xff1a;C &#x1f31f;人之为学&#xff0c;不日近则日退 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、拷贝构造函数 &#x1f4d2;1.1拷贝构造函数的概念 &#x1f4d2;1.2拷贝构造…...

B 站基于 StarRocks 构建大数据元仓

作者&#xff1a;bilibili 大数据高级开发工程师 杨洋 B站大数据元仓是一款用来观测大数据引擎运行情况、推动大作业治理的系统诊断产品。经过调研和性能测试&#xff0c;大数据元仓最终以 StarRocks 为技术底座&#xff0c;从实际的应用效果来看&#xff0c;大部分查询都能在几…...

最常用的4种光纤接口结构

光纤接口&#xff0c;全名是光纤活动连接器。光纤连接器就是用于光纤与光纤之间进行可拆卸连接的器件&#xff0c;它是把光纤的两个端面精密的对接起来&#xff0c;使光能量前后达到最大程度的耦合。 光纤连接器属于高精密的器件&#xff0c;最常见结构形式可分包括&#xff1a…...

Axure网页端高交互组件库, 下拉菜单文件上传穿梭框日期城市选择器

作品说明 组件数量&#xff1a;共 11 套 兼容软件&#xff1a;Axure RP 9/10&#xff0c;不支持低版本 应用领域&#xff1a;web端原型设计、桌面端原型设计 作品特色 本作品为「web端组件库」&#xff0c;高保真高交互 (带仿真功能效果)&#xff1b;运用了动态面板、中继…...

基于Java新人入职管理系统

基于Java新人入职管理系统 功能需求 1、个人信息管理&#xff1a;系统需要提供个人信息管理功能&#xff0c;包括新人的基本信息、联系方式、教育背景、工作经历等。 2、入职流程管理&#xff1a;系统需要提供入职流程管理功能&#xff0c;包括入职手续的办理、合同签订、入…...

Python实战 | 如何抓取腾讯视频

嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 爬虫: 作用: 批量采集数据 / 模拟用户行为 原理: 模拟成 客户端 向 服务器 发送网络请求 环境介绍: python 3.8 解释器 pycharm 编辑器 第三方模块: reques…...

总结MySQL 的一些知识点:MySQL 导出数据

MySQL 导出数据 MySQL中你可以使用SELECT...INTO OUTFILE语句来简单的导出数据到文本文件上。 使用 SELECT ... INTO OUTFILE 语句导出数据 以下实例中我们将数据表 kxdang_tbl 数据导出到 /tmp/kxdang.txt 文件中: mysql> SELECT * FROM kxdang_tbl -> INTO OUTFILE /…...

C语言-字符串操作函数-附加使用方式

文章目录 前言字符串复制-strcpy字符串复制&#xff08;按照位数&#xff09;-strncpy字符串比较-strcmp字符串比较(按照位数)-strncmp不区分大小写的字符串比较-strcasecmp不区分大小写的比较(前n位)-strncasecmp字符串按照格式写入-sprintf字符串按照格式和个数写入-snprintf…...

06-React组件 Redux React-Redux

React组件化&#xff08;以Ant-Design为例&#xff09; 组件化编程&#xff0c;只需要去安装好对应的组件&#xff0c;然后通过各式各样的组件引入&#xff0c;实现快速开发 我们这里学习的是 Ant-design &#xff08;应该是这样&#xff09;&#xff0c;它有很多的组件供我们…...

Windows安装卸载MySQL

【官方】MySQL参考手册&#xff1a;介绍MySQL Server、SQL、InnoDB存储引擎、复制等。 Windows 卸载 MySQL 删除程序 【win x】 > p &#xff0c;在安装的程序中卸载MySQL相关删除安装目录和数据文件夹 D:\ProgramFiles\MySQL C:\ProgramData\MySQL删除服务 【win r】 &…...

element-ui 重置resetFields()不生效

element-ui 重置resetFields()不生效 初始化数据 data() {return {dialogVisible: false,form: {name: ,age: ,sex: ,birth: ,addr: }}}弹窗关闭重置数据 handleClose() {// 弹窗关闭的时候清除数据this.$refs.form.resetFields()this.dialogVisible false }以上操作this.$…...

JVM学习笔记-如何在IDEA打印JVM的GC日志信息

若要在Idea上打印JVM相应GC日志&#xff0c;其实只需在Run/Debug Configurations上进行设置即可。 拿《深入Java虚拟机》书中的3-7代码例子来演示&#xff0c;如 1 public class JvmTest {2 private static final int _1MB1024*1024;3 public static void main(String…...

16ASM 汇编基础与Debug使用

目录 硬件运行机制 微机系统硬件组成 计算机系统组成 8086CPU组织结构 DoxBox安装 Debug使用 R命令 D命令 E命令 U命令 T命令 A命令 标志寄存器 常用机器指令 硬件运行机制 下面是一个电子器件二极管&#xff0c;正向加电则通&#xff0c;反向加电则不通 利用二…...

基于Java车辆管理系统(如高校、办公园区)

基于Java车辆管理系统&#xff08;如高校、办公园区&#xff09; 功能需求 1、车辆进出管理&#xff1a;对进出校园和园区的车辆进行登记、授权和监管&#xff0c;确保车辆进出安全&#xff0c;特别是对于贵重车辆或特殊车辆&#xff0c;可以进行特别监控。 2、停车管理&…...

Dubbo v Spring Cloud:两大技术栈如何选型?

提到微服务开源框架&#xff0c;不可不说的是 Dubbo 和 Spring Cloud&#xff0c;这两大框架应该是大家最熟悉的微服务解决方案&#xff0c;也是面试中的热点。本文就梳理下 Dubbo 和 Spring Cloud 的应用特性&#xff0c;以及两个组件的功能对比。 Dubbo 应用 Dubbo 是阿里开…...

ubuntu上搭建bazel编译环境,构建Android APP

背景是github上下载的工程&#xff0c;说明仅支持bazel编译&#xff0c;折腾了一天Android studio&#xff0c;失败。 不得不尝试单价bazel编译环境&#xff0c;并不复杂&#xff0c;过程记录如下 说明&#xff1a;ubuntu环境是20.04&#xff0c;pve虚拟机安装 1.安装jdk sudo…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

【kafka】Golang实现分布式Masscan任务调度系统

要求&#xff1a; 输出两个程序&#xff0c;一个命令行程序&#xff08;命令行参数用flag&#xff09;和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽&#xff0c;然后将消息推送到kafka里面。 服务端程序&#xff1a; 从kafka消费者接收…...

云计算——弹性云计算器(ECS)

弹性云服务器&#xff1a;ECS 概述 云计算重构了ICT系统&#xff0c;云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台&#xff0c;包含如下主要概念。 ECS&#xff08;Elastic Cloud Server&#xff09;&#xff1a;即弹性云服务器&#xff0c;是云计算…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的&#xff0c;比GNOME简单得多&#xff01; 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

【C语言练习】080. 使用C语言实现简单的数据库操作

080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验&#xff0c;我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育&#xff0c;这并非炒作&#xff0c;而是已经发生的巨大变革。教育机构和教育者不能忽视它&#xff0c;试图简单地禁止学生使…...

Vue ③-生命周期 || 脚手架

生命周期 思考&#xff1a;什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09; 什么时候可以开始操作dom&#xff1f;&#xff08;至少dom得渲染出来&#xff09; Vue生命周期&#xff1a; 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...

水泥厂自动化升级利器:Devicenet转Modbus rtu协议转换网关

在水泥厂的生产流程中&#xff0c;工业自动化网关起着至关重要的作用&#xff0c;尤其是JH-DVN-RTU疆鸿智能Devicenet转Modbus rtu协议转换网关&#xff0c;为水泥厂实现高效生产与精准控制提供了有力支持。 水泥厂设备众多&#xff0c;其中不少设备采用Devicenet协议。Devicen…...