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

[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. Travis-CI的进一步使用

    今天主要对.travis.yml文件和makefile进行进一步的了解: 1.在.travis.yml文件中添加了给linux系统中安装了cppunit库的语句,使能够持续集成写过的单元测试的代码.主 ...

  2. Analyzer的报表复制、移动

    制作Analyzer报表后,希望可以直接拷贝到其他机子上(无法通过网络连接到) 方法很简单: 1.进入Analyzer的数据库服务器设定页面,查找到连接的系统数据库是哪个 2.将该系统数据库备份出来 ...

  3. VMM学习-vmm_log

    功能类似verilog里的$display函数,在vmm里做了强化,可以在仿真过程中看到整个平台的运行信息,用来调试仿真平台. 函数原型在vmm.sv里(class vmm_log;),其构造函数为e ...

  4. 浅谈自我对git的初步认识

    本学期我们新增了一门课程,那就是软件工程,不知道为什么,感觉有种莫名的高大上.哈哈!难道是这个名称太抽象了吗?这个问题我感觉到后来肯定就明白了. 第一次博客,感觉好紧张哦,嘿嘿!老师让我们谈谈对git ...

  5. Linux进程栈和线程栈

    参考资料: http://blog.csdn.net/xhhjin/article/details/7579145 总结:     1.进程的栈大小是在进程执行的时刻才能指定的,即不是在编译的时候决定 ...

  6. samba 常见问题

    今天帮一个朋友搭建samba服务器,发现总是无法正常访问,最后google+摸索搞定了,下面把遇到的问题和解决方法共享一下. 这里用的linux是centos版本6. 一开始遇到的问题是‘找不到网络路 ...

  7. 打造XP下可运行的微型PE文件

    前几天和朋友交流技术,提到手工打造微型PE文件,他说现在网上流传的大部分版本在XP SP3下都不能运行,于是心血来潮,拍着胸脯说:“你放心,忙完了帮你做一个.”后来花了半天时间,终于打造出一个XP下可 ...

  8. *args和**kw魔法参数

    学Python挺久了,现在才搞懂这个还是有点惭愧 *args:传入元组,无关键字 **kw:传入字典,有关键字 示例: *args **kw 一起使用时args的参数需在前:

  9. VS2012 win7 修改TFS登陆账号

    1.修改登陆账号: 在网上搜了好多,都没有找到解决方法,自己琢磨了一会找到了修改登陆TFS(Team Foundation Server)(团队资源管理器)的账号,和大家分享一下吧. 点击“开始”-- ...

  10. 社交APP经典死法18种,听野路子产品菜狗怎么说

    点这里 社交APP经典死法18种,听野路子产品菜狗怎么说 时间 2015-04-06 11:24:53  虎嗅网相似文章 (4)原文  http://www.huxiu.com/article/112 ...