Bash Shell有个extglob选项,开启之后Shell可以另外识别出5个模式匹配操作符,能使文件匹配更加方便。
开启方法很简单,使用shopt命令:shopt -s extglob
关闭,使用shopt命令:shopt -u extglob
开启之后,以下5个模式匹配操作符将被识别:
?(pattern-list) - 所给模式匹配0次或1次; *(pattern-list) - 所给模式匹配0次以上包括0次;+(pattern-list) - 所给模式匹配1次以上包括1次; @(pattern-list) - 所给模式仅仅匹配1次;!(pattern-list) - 不匹配括号内的所给模式。
示例
删除文件名不以jpg结尾的文件:
rm -rf !(*jpg)
删除文件名以jpg或png结尾的文件:
rm -rf *@(jpg|png)
shopt命令
内置命令shopt(shell option)开启、关闭和列出那些控制着shell行为的某些bash特性。举例来说,下面的命令将使bash在扩展模糊文件引用时,包含那些以句号(.)开头的文件名,-s表示设置:
$ shopt -s dotglob
通过下面的命令可将这项特性关闭(默认),-u表示取消设置:
$ shopt -u dotglob
如果只将特性的名称作为shopt唯一的参数,shell显示该特性是如何设置的:
$ shopt dotglob
dotglob off
命令shopt不带任何选项或者参数时,将列出由shopt控制的那些特性及其状态。命令shopt -s不带参数时,将列出那些由shopt控制并设置为开启的特性。命令shopt –u将列出那些被取消或者关闭的bash特性。表8-13列出了bash特性。
使用shopt设置set ±o特性
提示 可以使用shopt设置或者取消那些由set ±o控制的特性。使用常规的shopt –s或者-u语法,并包含-o选项。举例来说,下面的命令将开启noclobber特性:
$ shopt –o –s noclobber
分享到:
相关推荐
在 Bash 中,set 和 shopt 是两个重要的命令,用于设置和管理 Shell 的选项和行为。本文将详细介绍 set 和 shopt 命令的使用方法和选项。 一、set 命令 set 命令用于设置和查看 Shell 的选项。基本语法为: `set ...
- `-x` 或 `xtrace`: 开启追踪模式,显示执行的命令和参数。 ### shopt命令 `shopt` 命令提供了一种更高级的方式来管理Shell的扩展选项,它比`set`命令提供了更多的定制化功能。以下是一些`shopt`命令的选项: - ...
shopt命令可以设置哪些控制着Shell行为特性的变量的开关值,以达到控制Shell行为的目的。当执行命令shopt不带任何参数时,将列出由shopt控制的那些特性及其状态。 语法格式:shopt [参数] 常用参数: -s 不带...
3. **修改Shell行为的命令**:这些命令可以改变Shell的属性和行为,如`set`、`shopt`等。 4. **特殊的内置命令**:根据POSIX标准特别定义的命令,如`if`、`case`等控制结构。 为了更详细地了解每个命令,可以使用`...
在深入探讨bash shell内建命令之前,我们先来理解一下bash是什么以及为什么它对更好地掌握Linux至关重要。Bash,全称Bourne-Again SHell,是Unix和类Unix操作系统中最常用的shell之一,包括所有主要的Linux发行版。...
- **选项设置**: 使用 `shopt` 命令来设置 shell 选项。 - **常用选项**: 如 `nocaseglob` (忽略大小写匹配)、`histappend` (将历史记录追加到文件) 等。 #### 命令执行 - **环境隔离**: 使用 `exec` 命令可以替换...
了解shell脚本调试方法,如set命令的使用,以及利用shopt选项来优化脚本执行。 5. 自学与提高: 居家自学Linux Red Hat和Shell,可以借助在线教程、书籍和官方文档。例如,Red Hat的官方文档提供了详细的系统管理...
- **shopt命令和选项**:用于调整Bash的行为细节。 - **exec命令**:用于替换当前进程的执行环境。 - **trap命令**:用于捕捉信号,并指定相应的处理动作。 ### 13. 命令行处理过程 - 描述了从用户输入命令到执行...
- **12.2 shopt命令和选项**:用于更改Bash的可选行为。 - **12.3 exec命令**:在当前shell中替换正在运行的程序。 - **12.4 trap命令**:定义信号捕获动作,用于响应特定信号。 #### 13. 命令行处理过程 - **命令...
### 关于 Linux 日常使用的 Shell 命令 在 Linux 操作系统中,Shell 命令是用户与操作系统交互的重要方式之一。掌握常用的 Shell 命令对于提高工作效率、解决实际问题至关重要。本文将详细介绍标题及描述中提及的...
总结来说,Shell中的别名简化了常用命令的输入,列表提供了复杂的逻辑控制,而数组则实现了数据集的存储和处理。这三个概念结合使用,可以使Shell脚本变得更加高效和强大。对于Shell程序员来说,熟练掌握别名、列表...
在Linux系统中,Shell脚本提供了许多操作文件和目录的强大工具。本文将详细介绍在Shell中删除某些文件外所有文件的三种方法,确保在保留特定文件的同时安全地删除其他不需要的文件。 ### 方法1:模式匹配法 这种...
如果不提供shopt_option,则在标准输出上打印由shopt接受的shell选项的名称和值。如果调用选项是+O,则输出以一种格式显示,该格式可以用作输入。 6. Bash的功能特性: Bash具备丰富的功能特性,包括能够读取和执行...
点文件安装存储并克隆仓库: apt-get install stowgit clone git@github.com:kellen/dotfiles.git ~/projects/dotfiles如果这是一个新系统, extglob可能需要启用extglob : shopt -s extglob如果dotfiles有顶级目录...
- `Checker` 和 `Find`: 分别指定用来计算checksum和查找文件的命令。 3. **函数定义**: - `scan_file()`: 遍历指定的目录,获取所有文件的路径并保存到临时文件中。 - `cr_checksum_list()`: 读取临时文件中的...
我是一名Linux新用户。现在我需要清理一个下载目录中的文件,其实我就是想从~/Download/文件夹删去除了以下格式的文件外所以其它文件: 1.*.iso – 所有的iso格式的文件。...这里你需要用系统内置的shopt命令来开启
- `shopt`:查看和更改Shell的行为选项。 - `env`:在特定环境下执行命令。 - `type`:识别命令是内置还是外部命令。 - `exit`:退出Shell。 - `unalias`:取消命令别名。 - `export`:将变量设置为环境变量,...
根据提供的文件信息,本文将对其中提及的各个IT知识点进行详细的解释与说明,重点围绕Linux命令及数据库操作展开。 ### Linux 常用命令 ...这些命令和操作在日常的 Linux 系统管理和数据库管理中非常实用。
内置命令还包括 `set` 命令,用于控制 shell 的行为,以及 `shopt` 命令,用于设置和查询 shell 选项。 #### 七、Bash 的国际化支持 Bash 支持国际化设置,可以通过环境变量 `LANG`、`LC_ALL` 等来指定语言环境。当...