如果我们想对一类文件批量操作,例如批量查看硬盘文件属性,那么正常命令是如下所示:

[root@localhost Desktop]# ls /dev/sda1
[root@localhost Desktop]# ls /dev/sda2

但是有的时候不知道分区的个数和分区号,这个时候就需要用通配符来解决了,Bash解释器支持的多种通配符包括:

   ?     匹配任意单个字符
[-] 匹配范围内的数字
[abc] 匹配给出的任意字符

实例1:查看sda开头的所有设备文件:

[root@localhost Desktop]# ls /dev/sda*
/dev/sda /dev/sda1 /dev/sda2

实例2:查看sda后面又一个字符的设备文件

[root@localhost Desktop]# ls /dev/sda*
/dev/sda /dev/sda1 /dev/sda2

实例3:查看sda后面包含0-9数字的设备文件

[root@localhost Desktop]# ls /dev/sda[-]
/dev/sda1 /dev/sda2

实例4:查看sda后面包含1或3或5的设备文件

[root@localhost Desktop]# ls /dev/sda[]
/dev/sda1

另外,bash还有多种特殊字符的扩展

\(反斜杠)    :    转译后面的单个字符
''(单引号)  :  转译所有字符
""(双引号)  :  变量依然生效
``(反引号)  :  之行命令语句

实例:

定义名称为PRICE的变量值为5:

 [root@localhost Desktop]# PRICE=

想要输出“价格是5”:

[root@localhost Desktop]# echo "Price is $PRICE"
Price is

想要输出“价格是$5”,但是因为美元符号与代表变量取值的$符号冲突了,所以报错

[root@localhost Desktop]# echo "Price is $$PRICE"
Price is 5435PRICE
[root@localhost Desktop]#

此时需要添加一个反斜杠,将$进行转译

[root@localhost Desktop]# echo "Price is \$$PRICE"
Price is $

使用单引号,变量将不再被取值

[root@localhost Desktop]# echo 'Price is \$$PRICE'
Price is \$$PRICE

执行uname -a 会查看本机内核的版本和架构信息(反引号里面的命令会被执行)

[root@localhost Desktop]# echo "uname -a"
uname -a
[root@localhost Desktop]# echo 'uname -a'
uname -a
[root@localhost Desktop]# echo `uname -a`
Linux localhost.localdomain 3.10.-327.28..el7.x86_64 # SMP Thu Aug :: UTC x86_64 x86_64 x86_64 GNU/Linux

Linux命令行通配符的更多相关文章

  1. Linux 命令行通配符及转义符的实现

    我们想对一类文件批量操作,例如批量查看硬盘文件属性,那么正常命令会是: [root@linuxprobe ~]# ls /dev/sda [root@linuxprobe ~]# ls /dev/sd ...

  2. Linux命令行批量替换多文件中的字符串【转】

    Linux命令行批量替换多文件中的字符串[转自百度文库] 一种是Mahuinan法,一种是Sumly法,一种是30T法分别如下: 一.Mahuinan法: 用sed命令可以批量替换多个文件中的字符串. ...

  3. 《Linux命令行大全》系列(三、Linux 系统)

    在<Linux命令行大全>一书中,第3章名称是 Linux 系统. 概念太大,不过该节内容却是 Linux 系统最为核心的基础——查看 Linux 系统. ls 命令 显示目录自身信息或目 ...

  4. 《Linux命令行与shell脚本编程大全 第3版》

    第一部分 Linux 命令行 第1章  初识Linux she1.1   什么是Linux 21.1.1 深入探究Linux 内核 31.1.2 GNU 工具 61.1.3 Linux 桌面环境 81 ...

  5. Linux命令行初学(一)

    linux命令大全:https://www.linuxcool.com/ 大概了解到有哪些命令,如果有需要的话可以在该网站上查询. 另外在实验楼学习了一些基础,该篇博客就此次对linux命令行的学习进 ...

  6. 像黑客一样使用 Linux 命令行

    前言 之前在博客园看到一篇介绍 IntelliJ IDEA 配置的文章,它里面用的是 gif 动态图片进行展示,我觉得很不错.所以在我今天以及以后的博文中,我也会尽量使用 gif 动图进行展示.制作 ...

  7. 详解Linux命令行下常用svn命令

    1.Linux命令行下将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/do ...

  8. linux 命令行 光标移动技巧

    linux 命令行 光标移动技巧 看一个真正的专家操作命令行绝对是一种很好的体验-光标在单词之间来回穿梭,命令行不同的滚动.在这里强烈建立适应GUI节目的开发者尝试一下在提示符下面工作.但是事情也不是 ...

  9. 在linux命令行下执行php 程序

    如何在linux命令行下,执行php程序. 例子 打印当前时间 php -r "echo time()" 随机输出一个数字 php -r "echo rand(1,20) ...

随机推荐

  1. Android -- 经验分享

    目录                                                                                             代码中安装 ...

  2. 团队开发——第一篇scrum报告

    一.角色介绍 产品负责人(兼项目经理PM):王雪青 scrum master: 陆宇 开发团队:赵建松.张文冬.徐擎天 二.product backlog 1.买家登录后,显示各个小吃摊的信息,主要是 ...

  3. 深入理解CSS3 animation的steps

    在应用 CSS3 渐变/动画时,有个控制时间的属性 <timing-function> .它的取值中除了常用到的三次贝塞尔曲线以外,还有个让人比较困惑的 steps() 函数. steps ...

  4. RobotFramework-关键字

    地址:https://github.com/NitorCreations/RobotFramework-EclipseIDE/tree/master/plugin/robot-indices Coll ...

  5. linshiwendang12--匈牙利

    #include<bits/stdc++.h> #define N 10007 using namespace std; vector<int> p[N]; bool vis[ ...

  6. Mybatis错误调试(二)

    错误日志信息:  Caused by: java.sql.BatchUpdateException: ORA-00911: 无效字符 at oracle.jdbc.driver.OraclePrepa ...

  7. Linq to Xml示例

    Xml文件: <?xml version="1.0"?> <Software xmlns:xsi="http://www.w3.org/2001/XML ...

  8. NYOJ-949 哈利波特 AC 分类: NYOJ 2013-12-30 12:57 217人阅读 评论(0) 收藏

    #include<stdio.h> int main(){ long long a,b,c,d,e,f; while(scanf("%lld%lld%lld%lld%lld%ll ...

  9. A*(A星)算法python实现

    在春节放假前两天我偶然看到了A\*算法(A\*算法是一个启发式的地图寻路算法),感觉挺有意思.正好放假前也没有什么事情,就花了一个下午写出算法的骨架,节后又花了半天时间完善屏幕输出的细节并且调试完成. ...

  10. [解决方案] 当 IDENTITY_INSERT 设置为 OFF 时

    当 IDENTITY_INSERT 设置为 OFF 时,不能为表 'tbUser' 中的标识列插入显式值. 解决:这个情况是你的表里面,有一列数据类型是IDENTITY的,也就是数据库自动递增列对于自 ...