当前位置:首页 » 操作系统 » linux文件通配符

linux文件通配符

发布时间: 2023-01-24 16:26:17

A. linux通配符有几种表达方式

通配符 1、基本的通配符有哪些? ·“?”可替代单个字符。 ·“*”可替代任意字符。 ·方括号“[charset]”可替代charset集中的任何单个字符。 对最后一条做些解释。[cChH]通配符便可替代c或h字符的大小写形式。 通配符集还能描述介于字符对之间的所有字符。如“[a-z]”就可以代 替任意小写字母,而[a-zA-Z]则可替代任意字母。注意可替代的字符 包括字符包括字符对之间的所有字符。 与DOS相比,UNIX的通配符机制要比DOS好得多。在DOS中,任何在“*” 之后,在“.”之彰的字符均被忽略,所以下面的指令将不能得到你想 象的结果。 del *bak.* 在DOS中,用户只能用此命令删除当前目前下的所有文件,除非系统要 求你不这样做。而在UNIX系统中,“*”可替代包括0在内的任意数字的 字符,但一行中的其余特征也仍需匹配,因此“bak.*”可匹配 newbak.save、oldbak.new甚至bak.temp,但不能和newbak匹配,因为后 者不含“.”。这非常巧妙,可大大方便用户,而“*bak”则可匹配以上 所有的词条,包括newbak。 2、能在一条指令中用多个通配符吗? 可以,如 rm a*out*tmp? 该命令可以删除一系列临时性的输出文件,如ab.out.temp1、ab.out.temp1 等。 3、如何利用通配符使指令更灵活? UNIX可将有一定关的文件看作一集合的一部分,用户可以用该集合去匹配。 所以,如果你需要删除file1.temp、file2.temp……file9.temp,只须健入: rm file[0-9].temp 该技巧的用处在于可以用删除那些相要删除的文件。如果你每天都要为一个 非常重要的 数据库 做一个“mp”报告,你把文件存入mp.date%h%d, 它包括一系列文件如下: mp.jun23 mp jun24 mp jun25 mp.jun26 再让我们假设因为每个文件的容量都在100M左右,所以磁盘空间很快会被占满, 因此需要每隔几天删去一些老的文件,只留下最近的两个文件,为此,键入: rm –i *[34] 这条指令将删去那些以“”开头并以“3”或“4”结尾的文件。

B. linux 通配符%.c和*.c区别

%.c是GUNmake语法层,表示的是所有以".c"结尾的文件
而*.c则是linux shell 语法层的,比如:rm -f *.o 类似的。
意思基本是一样的,就是一个是GUNmake的一个是shell的

C. Linux的基本命令格式如何Linux下经常使用的通配符有哪些

Linux的基本命令格式:

命令 [-选项] [参数]

  • 例如

  • ls -a /etc
  • ls - l /etc
  • makdir -p /abc/cba

linux常用通配符有* ,?,[ ],[^],[:space:],[:punct:],[:lower:],[:upper:],[:digit:],[:alnum:]等等。

* 匹配任意长度的任意字符

?匹配任意单个字符

[ ]匹配制定范围内的单个字符[^]匹配制定范围外的单个字符

[:space:]匹配单个空白字符

[:punct:]匹配单个标点符号字符

[:lower:]匹配单个小写字母字符

[:upper:]匹配单个大写字母字符

[:digit:]匹配单个数字字符

[:alnum:]匹配单个数字和字母字符

以上通配符在使用时还需再加一个[ ]

更多详细Linux知识可参考《Linux就该这么学》。

D. linux里*.* 和*意思一样吗

对于不同的工具*的定义不同,而且并没有统一的标准。
推荐使用 扩展的正则表达式 查找符合特定格式的字串,这个在linux里面是统一的。
grep sed awk 等等很多软件支持的都是 ERE (扩展正则表达式),可以看看《Linux就该这么学》详细了解下。

E. linux中 正则表达式和通配符的区别

通配符
它是由shell解析,并且一般用于匹配文件名,实际上就是shell解释器去解析的特殊符号,linux系统通配符有几下几种:
*:匹配任意多个字符
?:匹配任意一个字符
[...]:匹配中括号内出现的任意一个字符
[!...]:不匹配中括号内出现的任意一个字符

一般出现在要shell命令或脚本中,匹配特定的文件名

正则表达式
它是一个字符匹配标准,一些命令工具按此标准实现字符匹配,根据命令支持的匹配功能可分为基础正则表达式和扩展正则表达式,常用于支持正则表达式的工具,如sed,grep,awk...
有如下一些常用的匹配元字符:

字符匹配
.:匹配任意单个字符
*:匹配其前面一个字符出现任意次
?:匹配其前面的字符1次或0次
+:匹配其前面一个字符出现至少一次(在扩展正则表达式中)

位置匹配
^:锚定行首
$:锚定行尾
\<或\b:锚定词首,其后面的任意字符必须作为单词首部出现
\>或\b:锚定词尾,其前面的任意字符必须作为单词尾部出现
\B:非单词的开头或结尾
^$:空白行

分组() :
(ab)* : 匹配ab这个分组出现任意次
\1:引用第一个左括号以及与之对应的右括号所包括的所有内容,同理还有\2,\3

特殊子字符类:
[:alnum:] :任何字母和数字
[:alpha:] :任何字母
[:cntrl:] :控制字符. 在ASCII表中对应八进制000 到 037, 和177 ('DEL').
[:digit:] :任何数字
[:graph:] :匹配打印字符,相当于'[:alnum:]' +'[:punct:]'.
[:lower:] :小写字母
[:print:] :可打印字符,相当于 '[:alnum:]', '[:punct:]', 和space.
[:punct:] 标点符号,'! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ' { | } ~'
[:space:] 空白字符,tab, newline, vertical tab, form feed, carriage return, and space.
[:upper:] 大写字母
[:xdigit:] 任何16进制的数字,相当于[0-9a-fA-F]
所以:^[[:space:]]*$ :匹配没有任何内容的行

需要注意:[]中的特殊字符如.已经失去了其特殊含义,和方括号中的普通字符[abc]一样。

F. linux中的通配符[0-9]怎么用举一个例子

这个是属于“正则表达式”的知识,你先找一下这方面的教程学习一下,

网络一下“正则表达式”即可。这是在编写程序、查找和处理与字符串时的一项技术。

简单一个例子吧。比如你想查找一份文件,具体的名字忘了,但记得文件名是数字开头的,

那么可以这样查找这个文件:

find/-name"[0-9]*"

这样就找出所有数字开头的文件。

G. linux 通配符%.c和*.c区别

%.c是GUNmake语法层,表示的是所有以".c"结尾的文件
而*.c则是linux shell 语法层的,比如:rm -f *.o 类似的。
意思基本是一样的,就是一个是GUNmake的一个是shell的

H. linux中文件通配符的一个星号*和两个星号**有没有区别 比如ls /tmp/*和ls /tm

没区别,所以只用一个*号即可,*代表任意个数的通配符,包括0,所以没区别
如果是?就有区别,?代表一个字符

I. linux中怎么用ls查找以la开头的文件

1、直接使用通配符。

ls la*

这是最方便的一种方法,*表示匹配任何长度的任意字符,通过这样的方式就可以查找到所有以ls开头的文件,如果我们想查找文件名中含有la的文件,只需输入“ls *la*”即可。

2、可以使用管道,将ls输出送入grep这个程序来实现。

ls -1 | grep "^la"

-1选项表示将列出的所有文件排成一列,方便grep的匹配(grep按行匹配)。

(9)linux文件通配符扩展阅读:

ls 指令是Linux下最常用的指令之一。

ls 命令将每个由 Directory 参数指定的目录或者每个由 File 参数指定的名称写到标准输出,以及您所要求的和标志一起的其它信息。

运用举例:

1、列出具体文件 #ls -al //这个最常用,可是往往又不彻底符合要求,

2、列出一切子目录的文件:#ls -R //上个指令仅仅列出了本目录下的一切目录和文件,可是目录下的文件不会循环的列出。

3、分屏显现:#ls -l|more //能在当时屏退出,很有用,但不能一页一页翻屏

#ls -l|less //能用pgup,pgdw 翻页,但不能在当时方位退出。

J. Linux正则表达式与通配符

正则表达式:在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索或替换那些符合某个模式的文本内容。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。
只有掌握了正则表达式,才能全面地掌握 Linux 下的常用文本工具(例如:grep、egrep、GUN sed、 Awk 等) 的用法

grep、sed、awk天然支持正则
grep -v代表反选,反向选择匹配到的内容
grep -E代表使用扩展正则
grep -P代表使用Perl正则
sed -r 代表使用扩展正则

正则表达式分为三类(man grep可以看到,分别是basic RegExs,extended RegExs,perl RegExs)
1、基本的正则表达式(Basic Regular Expression 又叫 Basic RegEx 简称 BREs)
2、扩展的正则表达式(Extended Regular Expression 又叫 Extended RegEx 简称 EREs)
3、Perl 的正则表达式(Perl Regular Expression 又叫 Perl RegEx 简称 PREs)

b. 处理过程:查找文本文件中是否包含要查找的 “关键字”(关键字可以是正则表达式) ,默认返回匹配的该行的内容
c. grep|egrep处理文件时,按行处理 |
| sed | sed | sed -r | - | a. 处理对象:文本文件
b.处理操作:对文本文件的内容进行 查找、替换、删除、增加等操作
c. sed 在处理文本文件的时候,按行处理 |
| awk | - | awk | - | a. awk 处理的对象:文本文件
b. awk 处理操作:主要是对列进行操作 |

注意:egrep 或 sed -r 默认使用扩展正则表达式(EREs),一般特殊字符({})可以不转义

grep -E 以及egrep(Extend Regular Expression)

Linux通配符和三剑客的正则表达式是不一样的,因此,代表的意义也有较大的区别
通配符一般用户命令行bash环境,而linux正则表达式用于grep, sed, awk场景。

通配符说明

示例:* 的使用:代表任意0-N个字符,代表所有字符

热点内容
linux下执行sh脚本 发布:2025-07-07 22:49:00 浏览:125
云盘怎么存储资料 发布:2025-07-07 22:49:00 浏览:912
禁止别人绑定自己服务器ip 发布:2025-07-07 22:45:58 浏览:54
qqandroid版 发布:2025-07-07 22:29:59 浏览:40
python解压gz 发布:2025-07-07 22:03:19 浏览:620
安卓俄罗斯方块源码 发布:2025-07-07 21:56:11 浏览:474
安卓手机之王是哪个手机 发布:2025-07-07 21:44:30 浏览:614
安卓照片存储位置 发布:2025-07-07 21:31:58 浏览:964
kingcmsphp 发布:2025-07-07 21:31:49 浏览:393
微信的锁屏密码是什么 发布:2025-07-07 21:28:52 浏览:758