我正在尝试使用极其简单的正则表达式查看 zip 存档的内容。这有效:
rmorton@Rockette:~$ unzip -l Downloads/WeiDU-Linux-236.zip "*/i386/tolower" "*/i386/weidu" "*/i386/weinstall"
Archive: Downloads/WeiDU-Linux-236.zip
Length Date Time Name
--------- ---------- ----- ----
135308 2013-11-17 21:48 WeiDU-Linux/bin/i386/tolower
774816 2013-11-17 21:47 WeiDU-Linux/bin/i386/weidu
130392 2013-11-17 21:48 WeiDU-Linux/bin/i386/weinstall
--------- -------
1040516 3 files
但这并不:
rmorton@Rockette:~$ unzip -l Downloads/WeiDU-Linux-236.zip "*/i386/(tolower|weidu|weinstall)"
Archive: Downloads/WeiDU-Linux-236.zip
Length Date Time Name
--------- ---------- ----- ----
--------- -------
0 0 files
是什么赋予了?我是否对正则表达式在命令行上的工作方式存在误解,或者我是否遗漏了一些明显的东西?
答案1
阅读手册页解压缩。它不讨论正则表达式,只讨论两个特殊字符 * 和 ?。
答案2
您可以使用-LL
选项强制将每个文件名转换为小写,无论原始文件系统如何