一、通配符

  这是bash操作环境中一个非常有用的功能,这让我们使用bash处理数据就更方便了。

  常用通配符如下:

符号 意义
* 代表0个到无穷多个任意字符
? 代表一个任意字符
[] 代表一定有一个在中括号内的字符(非任意字符)
[-] 若有减号在中括号内,代表在编码顺序内的所有字符
[^] 若中括号内的第一个字符为^,则表示原向选择

【示例区】

预处理:LANG=C; alias ll=ls -al

题目1:找出/etc/下面以cron为开头的文件名

命令:ll -d /etc/cron*      //加上-d仅仅是为了显示目录而已

题目2:找出/etc/下面文件名刚好是五个字母的文件名

命令:ll -d ?????

题目3:找出/etc/下面文件名含有数字的文件名

命令:ll -d /etc/*[0-9]*

题目4:找出/etc/下面文件名开头不是小写字母的文件名

命令:ll -d /etc/[^a-z]*

题目5:将题目4找到的文件复制到/tmp中

命令:cp -a /etc/[^a-z]* /tmp

二、特殊符号

符号 内容
# 批注符号,常用于script中,视为说明。
\ 转义符号,将“特殊字符或通配符”还原成一般字符
| 管道(pipe),分隔两个管道命令的界定
; 连续命令执行分隔符
~ 用户的主文件夹
$ 使用变量前导符,即是变量之前需要加的变量替代值
& 作业控制,将命令变成背景下工作
! 逻辑运算意义上的“非”的意思
/ 目录符号,路径分隔的符号
>,>> 数据流重定向,输出导向,分别是“替换”与“累加”
<,<< 数据流重定向,输入导向
' ' 单引号,不具有变量置换的功能
" " 具有变量置换的功能
` ` 两个`中间为可以先执行的命令,也可使用$()
() 在中间为子shell的起始与结束
{} 在中间为命令块的组合

  我们的文件名应尽量避免使用到上述的字符。

学习bash——通配符与特殊符号的更多相关文章

  1. 第十一章、认识与学习BASH

    第十一章.认识与学习 BASH 最近升级日期:2009/08/25 1. 认识 BASH 这个 Shell 1.1 硬件.核心与 Shell 1.2 为何要学文字接口的 shell 1.3 系统的合法 ...

  2. 第十一章、认识与学习 BASH

    第十一章.认识与学习 BASH 1. 认识 BASH 这个 Shell 1.1 硬件.核心与 Shell 1.2 为何要学文字接口的 shell 1.3 系统的合法 shell 与 /etc/shel ...

  3. 鸟哥的Linux私房菜-第10/11/12/13章(vim程序编辑器、学习bash、正则表达式与文件格式化处理、学习Shell Scripts)

    第10章 vim程序编辑器 可以将vim看做vi的进阶版本,vim可以用颜色或底线等方式来显示出一些特殊的信息. 为何要学习vim?因为: a. 所有的 Unix Like 系统都会内建 vi 文书编 ...

  4. Linux学习笔记之认识与学习Bash

    什么是shell:shell是一个翻译器,将所敲的命令翻译成CPU能理解的语言,之后CPU再去执行,CPU执行后返回给shell,shell再翻译成我们所能理解的语言并显示:终端并不是shell,而是 ...

  5. Linux基本操作 9----- 认识与学习bash

    一 认识bash这个shell 1 管理整个计算机硬件的其实就是操作系统的内核,这个内核是需要被保护的,所以我们一般用户就只能通过shell来跟内核通信,以让内核达到我们所想打到的工作. 2 只要能够 ...

  6. L轻松学习inux教程5 知识与学习bash

    本系列文章由@超人爱因斯坦出品,转载请注明出处.          文章链接:          http://hpw123.net/a/Linux/Linuxjichu/2014/1031/101. ...

  7. 第11章 认识和学习bash

    认识bash这个shell 硬件.内核和shell 用户操作计算机流程如下: 用户——>用户界面(shell,KDE,application)——>核心(kernel)——>硬件(h ...

  8. 鸟哥Linux私房菜(基础篇)——第十一章:认识与学习Bash

    1.变量的取用与设定 ●变量的取用:echo ●变量的设定规则 变量与变量内容以一个等号『=』来连结. 等号两边不能直接接空格符. 变量名称只能是英文字母和数字,但是开头字符不能是数字. 变量内容若有 ...

  9. 认识与学习BASH①——鸟叔的Linux私房菜

    文章目录 认识与学习BASH① 认识BASH 壳程序 多种shells Bash shell 的功能 type :查询指令是否为Bash shell 的内置指令 指令的换行输入和快速删除 Shell的 ...

随机推荐

  1. 数据库——MySQL——权限管理

    关于MySQL的权限管理,可以理解为是MySQL运行你做的事情.比如MySQL允许你执行select操作那么你就不能用update操作.如果你让你在某台机器上连接MySQL,那么你就不能在这个机器以外 ...

  2. selenium之Xpath定位

    1. 绝对定位: driver.find_element_by_xpath("/html/body/div[x]/form/input") x 代表第x个 div标签,注意,索引从 ...

  3. iOS实现电话状态监听 CoreTelephony

    在程序中如果需要监听电话状态,可以引入CoreTelephony框架,这个框架包含了电话相关的API,可以实现监测来电,查看运营商信息等功能.下面就是具体的实现监测来电的代码.一定要把center写成 ...

  4. Qt学习交流(广告)

    最近全面学习QT与c++,希望同行能够指教,于是打算建个群QQ群:85439482,欢迎大家,本群主要专注于QT皮肤库积累,软件架构以及标准c++学习.

  5. 构建高可靠hadoop集群之3- Quorum Journal Manager

    在正式环境中,搭建高可靠(ha)的系统是必须的. 例如oralce的rac,apache集群,windows服务器集群 本文不再赘言ha的重要性. 本文主要是对 http://hadoop.apach ...

  6. 使用SimpleDateFormat解析日期得到年份不正确的结果

    今天写项目的时候发现日期解析结果不对,很纳闷,从控制台中看传过来的数据是对的,但解析得到数据就是错的,如下图 最终查资料发现是格式上的错误,年份的YYYY应该改成yyyy,之后就正常了. 以下是正确格 ...

  7. mysql 如何监控innodb的阻塞

  8. Java中Redis缓存

    1:安装 安装可分为单机版redis 和集群版redis  安装比较简单,自行百度即可 2:集成 pom文件中加入jedis 依赖,spring创建redis的application-resid配置, ...

  9. (转载)jsp的内部方法jspInit(),_jspService(),jspDestroy()

    jspInit(){}:jsp Page被初始化的时候调用该方法,并且该方法仅在初始化时执行一次,所以可以在这里进行一些初始化的参数配置等一次性工作,由作者创建jspDestroy(){}:jsp P ...

  10. mysql 优化like查询

    1. like %keyword    索引失效,使用全表扫描.但可以通过翻转函数+like前模糊查询+建立翻转函数索引=走翻转函数索引,不走全表扫描. 2. like keyword%    索引有 ...