linux命令中的通配符

article/2025/9/23 22:00:44

本小节将介绍一些Linux一个非常实用且出现频率较高的功能,linux通配符,并简述通配符和正则的区别,作为我的CSDN专栏《系统学习Linux命令》的一篇。

前面的章节提到,如果想要一次性删除很多的文件,这个时候就需要使用到linux中的通配符机制。一些常见的场景如下:

  • 输出当前目录中以特定字符开头的文件名。
  • 将特定字符开头的文件合并成为一个新的文件。
  • 将特定字符开头的文件移动到到另外一个目录。
  • 一次性删除当前目录下所以.txt结尾的文件。
  • 将特定字符开头的文件权限设置为777。

解决上述四个场景可以采用如图1所示的命令:

在这里插入图片描述
图1

图1中使用了*这个通配符,同时可以看到很多的命令支持通配符的形式。除了上述提到的星号通配符,linux还提供了一些其他的字符,来表示更多的通配模式,具体如下:

  • * 表示任意多个字符,包含0次,如图1中在使用chmod设置权限的时候,test*中的test文件的权限也发生了改变。
  • ?表示任意一个字符,用以和*所表示的0次或者多次相对应。
  • [[:type:]]该种形式表示匹配type类型中的字符,其中type具体可以是digit,表示匹配的是数字,upper表示匹配的是大写字母,lower表示匹配的是小写字母,alpha表示匹配任意一个字母。
  • [characters]characters表示字符的集合,用中括号表示匹配其中任意一个字符
  • !用来表示字符集合之外的字符,例如[![ABC]]表示除ABC之外的字符。

图2中分别使用了通配符*,[:digit:],[:upper:]等,如下:

在这里插入图片描述

图2

类似的,像rm,mv,chmod,cat等命令有一个共同的特点就是使用文件名作为参数,因此可以看到通配符的目的是匹配到更多的文件,可以和使用文件名为参数的命令配合使用。上述的表示次数的通配符*,表示否定的通配符!以及表示特定字符集的通配符配合使用能够解决很多的批量文件操作问题,在平时的使用过程中多加利用,能够提升效率。

但是通配符的目的还是依据模式选择已经存在的文件名。但是对于mkdir这种命令而言,他的参数不是已经存在的文件名称,通常是还没有存在的文件名称。这种情况下我们能不能借助通配符的思想,批量的创建文件呢。在linux中当然是可以的,但是这在linux中是另外一个话题,被称之为linux扩展,在后续的章节会继续讨论。

通配符和正则的区别

通配符其实是shell程序提供的一项功能,前面提到shell不仅仅是内核和终端之间的传话筒那么简单,这就是证据之一。当使用者在shell中输入*或者[[:digit:]]等通配符的时候,shell程序会在程序执行之前将其进行扩展,从这个角度来说通配符也是linux的扩展功能。由于通配符往往匹配的是文件名,因此通配符也被称之为Linux的路径扩展。由于通配符是shell提供的功能,因此通配符通常只能由shell进行解析,即只能在shell命令以及shell脚本中被使用。同时,凡是支持文件名入参的命令往往都是可以使用通配符的。

正则表达式大家往往听得比较多,不仅在Linux中,比如grep,awk等命令支持正则表达式,在python,Perl,Java等主流的语言中也是可以使用正则进行字符串的匹配的。因此通常意义上我们说正则表达式指的是一种字符串的匹配模式,当然这种模式有一个约定俗成的标准,比如*,?,$这些字符都被赋予了特殊的含义,当然其实在通配符中的[:digit:]以及[:upper:]在正则中也具有同样的表示含义,只是正则表达式这种模式更为的丰富和复杂。正是有了字符串匹配模式这样一个标准,实现了这种匹配模式的代码,被称之为正则引擎,很多的语言以及工具比如python和grep命令都会实现这样一个正则引擎。比较出名的就是perl语言中的正则引擎,很多其他语言以及工具或多或少受其影响。需要注意的是,在使用一些命令的时候,有的正则模式并不支持,这个时候就要注意该命令是否只是实现了基本的正则模式,对于一些扩展的模式并没有实现。关于正则表达式更多的内容,后续再讨论。

本文为CSDN村中少年原创文章,未经允许不得转载,博主链接这里。


http://chatgpt.dhexx.cn/article/x2ARZWxZ.shtml

相关文章

shell中通配符的使用

shell中的通配符与正则表达式是不同的两种功能。 正则表达式一般不会在bash直接应用,需要使用sed、grep、awk来解释正则表达式。 通配符则可以通过bash直接解释,一般用作名称展开。 bash中可以使用的通配符符号包括:*、?、{}、[]、^ 这些…

linux—通配符详解及总结

本博客主要详解关于linux中常使用的通配符的知识点,主要分为三个步骤: 通配符 *,?和【】【^】的详细解释举例截图说明个人的总结理解 一:通配符 *,?和【】【^】的详细解释 ps:因为…

Linux之通配符、引号的使用

目录 Linux之通配符、引号的使用 通配符 定义 范围 用法及含义 案例 引号使用 案例 Linux之通配符、引号的使用 通配符 定义 通配符是一种特殊语句,主要有星号(*)、问号(?)等表示,用来模糊搜索文件,当查找目录或文件时,…

bash之通配符

为什么要写这篇文章 我相信很多人和我一样,天天在使用linux的shell命令,也大概知道有通配符这么个概念,不过比较模糊。平时也会使用简单的通配符,也许还知道有正则表达式的存在,甚至不清楚两者的区别,往往…

10.linux通配符

一,linux通配符及正则表达式 通配符:用于文件名匹配,是由shell解析,如find,ls,cp,mv。 *:匹配任意长度的任意字符 ?匹配任意单个字符 [ ]匹配指定范围内任意单个字符 […

Linux之通配符

一 Linux命令的共通知识点 1.通配符的使用 通配符:又叫文件名替换符号,符号具备特殊含义,例如:文件名:test,通配符可以写成???或者* *:代表可以匹配任意长度的文件名(all所有&am…

Linux详解:通配符

Linux是一款开源操作系统,其灵活性和可定制性一直受到开发者的喜爱和追捧。而且,Linux在文件管理方面提供了丰富的功能,例如通配符,它是一种用于匹配文件名的特殊字符。通配符在Linux中可以帮助我们更加方便和快捷地查找和操作文件…

linux通配符和正则表达式

1、 通配符 通配符是shell在做PathnameExpansion时用到的。说白了一般只用于文件名匹配,它是由shell解析的,比如find,ls,cp,mv等。 1、1 Shell常见通配符: 通配符含义实例*匹配 0 或多个字符a*b a与b之间…

黑客都怎么制作外挂?C++黑客编程收集的源码集合

VC黑客编程收集的代码: 打开远程telnet服务代码 浏览器 屏幕精灵 探测Windows主机的NetBIOS信息 获取asp代码的程序 聊天系统的列子 邮件发送代码 远程控制程序 sqlworm蠕虫 tini2后门代码 这些代码有的配有测试单元 ,有的没有,仅…

制作外挂需要多高的编程技术?

游戏外挂和游戏开发出游戏诞生之初注定是一对生死冤家,正常来讲制作外挂思路比较散,不一定要非常高的编程技术,而且外挂的制作也不是一劳永逸的,因为游戏公司也在不停的更新修改防御规则,只要游戏存在外挂也会层出不穷…

利用Python制作微信跳一跳外挂,微信好友装逼神器!

导语 前几天在GitHub上看到有人利用Python玩一款名为“跳一跳”的微信小程序,于是打算自己也来试一试,进群:711944363 获取微信跳一跳源码! 演示工具 电脑系统:Win10 Python版本:2.7.13(64位) 环境配置 Step1:安装Python 安装Python2.7并添加到环境变量中。 S…

CE+OD外挂制作实战 [提高篇]

人造指针&基址 实验目标:通过向游戏注入一段特殊汇编代码,实现自动获取动态地址.省略找基址的麻烦 为什么会出现人造指针 ? 1.基址偏移层数太多,很难找 2.有些游戏根本找不到基址 人造指针有什么优缺点? 1.人造指针就算游戏更新也无需去重复找基址 2.缺点是,需要注入代…

C/C++编程日记:制作一个简单的内存外挂

简单外挂 通过 C 语言编写一个简单的外挂,通过api函数修改游戏数据,从而实现作弊功能 对象分析 要用的 API 函数简单介绍 编写测试效果 本次游戏对象为 Super Mario XP 没有更新所以可用任意版本 试玩发现人物血量最大为 10,心最大为 99&…

外挂基础知识入门教学

{threadNotes} 外挂制作必备工具下载. 工具下载: peid 0.94 用于查壳,知道什么壳就可以脱壳拉. http://www.pediy.com/tools/unpack/File_analysers/peid/peid.rar OllyDbg调试器 调试游戏.http://www.pediy.com/tools/Debuggers/ollydbg/OllyICE.rarOD脱壳脚本 用…

C#简易外挂制作

【外挂修改器简单介绍】 游戏外挂分为很多种类型,例如本地客户端的内存修改、远程服务器的封包破解。 一般的网游由于服务器的机能限制,并不会将游戏产生的所有数据、计算都提供给服务器来承担。经常的,服务器只会将玩家人物的属性、血量、加…

旧手机改电脑外挂,文本补充

时间:2022/11/18 作者:二本双非小白 该文章主要针对小白 事情开始: 2022-06-02 某位华为大佬发布视频-----------旧手机改电脑外挂 视频链接:旧手机改电脑外挂-效率或将“提升300%?”_哔哩哔哩_bilibili 随着时间推移&…

利用Python做绝地科学家(外挂篇)

前言 玩吃鸡时间长的小盆友,应该晓得这游戏的体验非常差,特别是高端局,神仙满天飞。 所有今天我也要用Python写一个外挂,开始我的报复科学实验。 但是,要是。。。。。。要是被封号了,那就,那就…

外挂制作必备工具下载.

外挂制作必备工具下载. 工具下载: peid 0.94 用于查壳,知道什么壳就可以脱壳拉. http://www.pediy.com/tools/unpack/File_analysers/peid/peid.rar OllyDbg调试器 调试游戏. http://www.pediy.com/tools/Debuggers/ollydbg/OllyICE.rar OD脱壳脚本 用于脱壳. http:/…

游戏反外挂技术原理讲解

永远在路上 没有破解不了的反外挂系统,反外挂是一个对抗过程,需要不断升级。我们反外挂小组会采取对抗方式提升防御,也会研究竞品来获取灵感。反外挂也是非常有意思的,可以学到很多很多底层知识。 善战者无赫赫之功 反外挂&#x…

游戏外挂:用Python做个小游戏的开挂

小游戏开挂之路 一、工具的准备1.截屏和图像处理工具2.编辑器3.游戏原理分析二、开挂步骤1.移动鼠标2.点击鼠标3.相似图像查找原理4.实现开挂,自动做菜玩过电脑游戏的同学对于外挂肯定不陌生,但是你在用外挂的时候有没有想过外挂怎么制作出来的呢?现在来看一下怎么制作一个外…