首页 > 其他分享 >命令行-通配符

命令行-通配符

时间:2024-01-25 22:02:05浏览次数:39  
标签:输出 通配符 测试数据 cd ls 命令行 txt

1. 命令行-通配符

globbing patterns 命令行查询、编辑、过滤文件或目录对象时,使用通配符匹配文件或目录名称的文本格式

  • ? 单个任意字符,不能匹配空格
# 创建测试数据
touch a.txt b.txt cd.txt 'e f.txt'

# 输出: a.txt. b.txt
ls ?.txt

# 输出: cd.txt
ls ??.txt
  • * 任意多个字符,可以匹配空格

适用以带有前缀或者后缀的名称的文件或目录名

# 创建测试数据
touch a.txt b.txt cd.txt 'e f.txt'

# 输出:a.txt b.txt cd.txt 'e f.txt'
ls *.txt
  • [] 方括号中任意字符
# 创建测试数据
touch a.txt b.txt cd.txt ce.txt cef.txt

# 输出:a.txt  b.txt
ls [ab].txt
  • [^][!] 非方括号内任意字符
# 创建测试数据
touch a.txt b.txt cd.txt ce.txt cef.txt

# 输出:cd.txt   cef.txt   ce.txt  'e f.txt'
ls [^ab]*.txt 

# 等价
ls [!ab]*.txt 
  • {} 匹配大括号里任意一个模式
# 创建测试数据
touch a.txt b.txt cd.txt ce.txt cef.txt

# 输出:a.txt  b.txt
ls ls {a,b}.txt

# 输出:cd.txt  ce.txt
ls c{d,e}.txt
  • {start..end} 匹配一个连续范围的字符
# 输出:a.txt b.txt c.txt d.txt
echo {a..d}.txt

2. 通配符执行过程

命令行会首先解释通配符,然后作为命令行的参数交给命令执行

  • 通配符没有匹配到文件或者目录名,会原样输出
# 该目录下没有匹配名称的文件名,输出:ls: 无法访问 'tests*': 没有那个文件或目录
ls [adc]?.txt
  • 不能匹配路径分隔符 /
# 创建测试数据
mkdir tests

#输出:ls: 无法访问 'tests*': 没有那个文件或目录
ls tests*
  • 使用单引号包裹通配符变成普通字符
# 输出:ls: 无法访问 '?.txt': 没有那个文件或目录
ls '?.txt'

标签:输出,通配符,测试数据,cd,ls,命令行,txt
From: https://www.cnblogs.com/2bjiujiu/p/17988281

相关文章

  • Centos桌面模式和命令行模式切换
    希望在VMware中的CentOS虚拟机默认启动到命令行模式(无桌面模式),而不是图形用户界面(GUI),可以按照以下步骤操作:打开终端,使用以下命令获取当前的默认目标(target),如果是图形模式,通常会显示graphical.target。systemctlget-default将默认目标设置为多用户模式,这是一个无桌面的......
  • # WinDbg学习三(字符串通配符语法)
    说明星号(*)代表零个或多个字符。问号(?)代表任意单个字符。包含字符列表的方括号([])代表列表中的任何单个字符。恰好匹配列表中的一个字符。在这些括号内,您可以使用连字符(-)指定范围。例如,Prog[er-t7]am匹配“Progeam”、“Program”、“Progsam”、“Pro......
  • Rust 一个 I/O 项目:构建一个命令行程序
    本篇在原文基础上有删减和添加,增加了一些细节内容,原文请参考一个I/O项目:构建一个命令行程序。目录接受命令行参数读取参数值将参数值保存进变量读取文件重构改进模块性和错误处理二进制项目的关注分离提取参数解析器组合配置值使用clone的权衡取舍创建一个Config的构造函数......
  • 44从零开始用Rust编写nginx,命令行参数的设计与解析及说明
    wmproxywmproxy已用Rust实现http/https代理,socks5代理,反向代理,静态文件服务器,四层TCP/UDP转发,七层负载均衡,内网穿透,后续将实现websocket代理等,会将实现过程分享出来,感兴趣的可以一起造个轮子项目地址国内:https://gitee.com/tickbh/wmproxygithub:https://github.com/......
  • Go-命令行参数解析
    1.解析命令行参数程序在执行时,获取在命令行启动程序是使用的参数命令行(Commandlineinterface--CLI):基于文本来查看、处理、操作计算机的界面,又被称为终端、控制台命令:在命令行执行的程序,一般是一行,包含命令名字、子命令与命令相关的选项(Flag),Flag:传递给命令的参数......
  • [转帖]使用MAT命令行工具生成堆dump分析文件
    https://www.cnblogs.com/hellxz/p/use_mat_linux_command_line_generate_reports.html 写作目标Java程序运行过程中,难免会出现OOM,往往是在JVM启动参数中添加出现OOM时输出堆dump(又名:堆转储、堆快照)的参数,就在昨天下午我司生产环境出现OOM,生成的堆dump有16个G,......
  • 命令行窗口排列 https://share.weiyun.com/EykMqNix 密码:ydvrx5
    12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788......
  • nginx 命令行启动成功, systemd启动失败
    通过一下方式解决问题:https://serverfault.com/questions/759175/nginx-hangs-using-service-nginx-start 使用./nginx启动成功,但是使用systemd配置启动失败,以下是配置文件:sudonano/etc/systemd/system/nginx.service[Unit]Description=TheNGINXHTTPandrevers......
  • 命令行 下载器 支持协议 有那些
    Curl:Curl是一个功能强大且广受欢迎的命令行工具,支持多种网络协议,包括HTTP、HTTPS、FTP、SFTP、TFTP、SCP、LDAP、SMTP、POP3等。curl-o保存文件名下载链接Wget:Wget是另一个常用的命令行下载工具,支持多种协议,如HTTP、HTTPS、FTP、SFTP等。wget下载链接aria2:aria2是一个强......
  • 使用 Picocli 开发 Java 命令行,5 分钟上手
    大家好,我是鱼皮,对不会前端的同学来说,开发命令行工具是一种不错的展示系统功能的方式。在Java中开发命令行工具也很简单,使用框架,几分钟就能学会啦~Picocli入门Picocli是Java中个人认为功能最完善、最简单易用的命令行开发框架,可以帮助大家快速开发命令行工具。网上有关Pico......