花括号扩展(brace expansion)可能算是最奇怪的扩展方式了。有了它,你可以按照花括号里面的模式创建多种文本字符串。实例如下:

$ echo Front-{A,B,C}-Back

Front-A-Back Front-B-Back Front-C-Back

用于花括号扩展的模式信息可以包含一个称为前导字符(preamble)的开头部分和一个称为附言(postscript)的结尾部分。

花括号表达式本身可以包含一系列逗号分隔的字符串,也可以包含一系列整数或者单个字符。这里的模式信息不能包含内嵌的空白。下面的例子使用了一系列的整数,注意是两个点:

$ echo Number_{1..5}

Number_l Number_2 Number一3 Number一4 Number一5

下面输出一系列逆序排列的字母。

$ echo {Z..A}

Z Y X W V  U T S R Q P O N M L K J I H G F E D C B A

花括号扩展支持嵌套。

$ echo a{A{l,2},B{3,4}}b

aAlb aA2b aB3b aB4b

那么花括号扩展一般应用在哪些地方呢?

最普遍的应用是创建一系列的文件或者目录。比如说, 摄影师有一个很大的图片集,想要按年份和月份来对这些图片进行分组,那么要做的第一件事就是创 建一系列以年月格式命名的目录。这样,这些目录名将会按照年代顺序排列,输出目录的一个完整的 列表。但是这样做工作量大,而且容易出错。为此我们可以这样操作。

$ mkdir Pics

$ cd Pics

$ mkdir {2009..2011}-0{1..9} {2009..2011}-{10..12}

$ Is

这是非常巧妙的方法。

linux命令行中的大括号,linux命令行学习(19):花括号扩展(brace expansion)相关推荐

  1. Linux之vim中翻页的命令

    Linux之vim中翻页的命令 当我们进入Linux的vim编辑器查看脚本时,按上下键查看是不是非常慢?这个时候就要用到我们的翻页快捷键了,快捷键命令如: 整页翻页 ctrl-f ctrl-b ctr ...

  2. LaTex中插入大括号的多行公式

    参考 LaTex中插入大括号的多行公式 - 云+社区 - 腾讯云 由于近期要发表论文,不得不恶补LaTex.现在需要插入带大括号的多行公式,效果如下: LaTex编辑如下: \begin{equati ...

  3. pandas使用drop_duplicates函数基于subset参数指定的数据列子集删除重复行、并设置keep参数保留重复行中的最后一个数据行

    pandas使用drop_duplicates函数基于subset参数指定的数据列子集删除重复行.并设置keep参数保留重复行中的最后一个数据行 目录

  4. shell脚本中的花括号扩展

    shell脚本中的花括号扩展 在shell脚本中可以在花括号中使用一组以逗号分隔的字符串或者字符串序列来进行字符串扩展,最终输出的结果为以空格分隔的字符串(整数也可) [root@mao_aliyun ...

  5. Linux之shell中的大括号、中括号、小括号的使用详解+多示例

    摘要:很多人和我一样对于shell的各种括号的各种用法肯定不是很清楚,有时候看见别人脚本都不知道是什么意思,今天就来说说bash中的大中小括号的用法和解释,本人常用bash所以也只能用bash来说明了 ...

  6. linux 匹配文本中的ip,linux文本三剑客匹配网卡IP地址大PK(CentOS 7系统)

    运维工程师在做配置的过程中很多时候都需要去获取目标服务器网卡上的IP地址,那究竟用什么方式获取更便捷了,博主今天就带大家使用linux文本三剑客分别获取一下网卡的IP地址,最后我们再来对比一下. 实验 ...

  7. awk截取字符命令_bash中的字符截取命令cut和awk

    grep也是字符截取命令(本笔记在查找命令中),是从文件中截取符合条件的行,其他常见的字符截取命令还有: 一.cut列提取命令:cut [选项] 文件名 -f m[,n]:指定提取第m列或第m到第n列 ...

  8. oracle中的set命令,oracle中常用的set命令

    time:2008/2/1 author: skate oracle中常用的set命令 前一阵在做数据库数据的转移,所以就写个shell脚本来自动化完成,用shell脚本生成sql脚本时,就要用到 o ...

  9. Linux查看系统中用户信息,Linux下用于查看系统当前登录用户信息的4种方法

    作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动.有些时候,你甚至需要知道他(她)们正在做什么.本文为我们总结了4种查看系统用户信息(通过编号(ID))的方法. 1. 使用w ...

  10. 在linux命令行中直接执行php命令

    有时候用浏览器调试太麻烦,想在linux命令下直接执行php代码 php -r 'echo 0500;' 转载于:https://www.cnblogs.com/wangkongming/p/4236 ...

最新文章

  1. mysql索引无效且sending data耗时巨大原因分析
  2. 2020 年最全 Python 面试题汇总 (一)
  3. 宝塔面板进行ssl配置,显示待域名确认
  4. docker 安装 mysql和Navicat Premium 远程连接
  5. 服务禁止方法_Linux禁止ping以及开启ping的方法
  6. 再举个webstrom 正则应用例子。
  7. 进程间通信程序设计1
  8. Java调用Lua(转)
  9. js 正则表达式匹配定义及使用
  10. java基础--狂神
  11. php面试php数组变ahp,php实现把数组按指定的个数分隔
  12. 5月14日社区技术直播【Analytics Zoo上的分布式TensorFlow训练AI玩FIFA足球游戏】
  13. 前端程序员福利 利用node写接口
  14. 东澳岛叹海胆之旅 面朝大海一起大快朵颐
  15. 阿里云服务器硬盘不够用怎么办?
  16. 游戏手柄计算机,win7系统怎么设置连接手柄 win7电脑连接游戏手柄的方法
  17. 永洪Desktop实例分享|星巴克数据指标体系建设及炫酷可视化大屏搭建
  18. ssm+jsp计算机毕业设计CheatEngine学习系统4i3k0(程序+LW+源码+远程部署)
  19. 数据驱动是怎么跑偏的
  20. 格式转换小技巧全在这

热门文章

  1. 试验笔记 - 使用7-ZIP压缩来减小APK安装包体积
  2. 为Bootstrap模态对话框添加拖拽移动功能
  3. 3 docker容器
  4. 怎么让你开发的安卓软件适应更多尺寸的设备
  5. VMware View 5.0 策略列表
  6. 利用工作流给Windows SharePoint Service 3.0添加Skype通知功能
  7. wordpress让百度分享支持https
  8. 打乱 数字_“142857”金字塔中的神秘数字,其中隐藏什么秘密?
  9. 动物统计 nyoj286
  10. 进位位判别法_''进位-判断-执行''的通用思想