美文网首页
missing之bash脚本编写-4

missing之bash脚本编写-4

作者: 墨道院 | 来源:发表于2021-01-13 18:31 被阅读0次

用通配符和大括号实现的shell globbing 的便利功能

当调用脚本的时候,你可能会输入一些类似的,同质的选项。正好Bash有一些技巧可以扩展文件的后缀名,叫做shell globbing,中文我也暂时不知道怎么翻译。

  • 通配符(Wildcards ). 做通配符匹配的时候,我们可以使用?或者*。问号?只匹配一个字符,星号*可以匹配任意个字符。比如有这样几个文件:foo, foo1, foo2, foo10 以及 bar,命令rm foo?将会删除foo1和foo2,而rm foo*将会删除除了bar以外所有的文件。
  • 大括号({}). 当一些类似的命令里里有一些字符串,他们虽然不一样,但是比较类似,就可以用大括号来做一些处理。

看看下面的例子:

convert image.{png,jpg}
# Will expand to
convert image.png image.jpg

cp /path/to/project/{foo,bar,baz}.sh /newpath
# Will expand to
cp /path/to/project/foo.sh /path/to/project/bar.sh /path/to/project/baz.sh /newpath

# Globbing techniques can also be combined
mv *{.py,.sh} folder
# Will move all *.py and *.sh files
mkdir foo bar
# This creates files foo/a, foo/b, ... foo/h, bar/a, bar/b, ... bar/h
touch {foo,bar}/{a..h}
touch foo/x bar/y
# Show differences between files in foo and bar
diff <(ls foo) <(ls bar)
# Outputs
# < x
# ---
# > y

编写Bash脚本是一件非常反直觉的事情,因此有个工具shell check可以像编译器那样检查你的脚本写的是否有问题。

相关文章

  • missing之bash脚本编写-4

    用通配符和大括号实现的shell globbing 的便利功能 当调用脚本的时候,你可能会输入一些类似的,同质的选...

  • missing之bash脚本编写-2

    # 脚本的返回值或者运行结果 一般情况下,很多命令将一般信息打印到标准输出(STDOUT),将错误打印到标准错误输...

  • missing之bash脚本编写-3

    条件比较语句 下面有个例子,将上面说的几个点综合了一下: 首先 $(date) 打印出时间,然后遍历脚本的输入参数...

  • missing之bash脚本编写-1

    Bash脚本编程在平时的工作中可以起到解放生产力的作用。因为通过bash脚本可以将繁琐,可重复的工作进行自动化运行...

  • bash脚本编写

    一,概括: read命令是用于从终端或文件中读取输入的内部命令 读取整行输入 每行末尾的换行符不被读入 二,rea...

  • Bash基础知识

    在上一篇文章《不过时的技术-Bash脚本》中,我们简单介绍了Bash脚本,并且学会如何编写、运行一个Bash脚本。...

  • shell脚本简单的基本语法

    1.脚本的格式要求 1.脚本以#!/usr/bash开头,表示编写的脚本以bash这种终端解释器来解析。 2.脚本...

  • bash脚本的编写

    bash基本使用 一:read命令 .read命令是用于从终端或者文件中读取输入的内部命令 .读取整行输入 .每行...

  • 【日志切割】

    一.脚本编写 #!bin/bash data=$(date +%F-%H:%M) mv /application/...

  • xshell脚本启动JAR包-定时任务拆分日志

    一、启动脚本编写 #!/bin/bash #name:******service.sh; #date:2020-1...

网友评论

      本文标题:missing之bash脚本编写-4

      本文链接:https://www.haomeiwen.com/subject/hwlpaktx.html