globbing

如何使 bash 的 glob 字符类区分大小写?
globbing

如何使 bash 的 glob 字符类区分大小写?

我创建了一些文件,如knob_A.png和knob_a.png,我的 Windows 队友说这导致她的应用程序出现问题。我决定调用它knob_W.png而不是knob_a.png。然后我对我们的共享服务器进行了 rsync。为了清理一切,我做了 rm knob_[a-d]*.png 它knob_A.png也移除了。这作为足球棒是错误的。 两者都shopt -s nocaseglob不会shopt -u nocaseglob让它按照我想要的方式运行。 我怎样才能告诉 bash 让它的 glob 像以前一样区分大小写? ...

Admin

使用文件名日期在特定日期范围内的 Linux tar 文件
globbing

使用文件名日期在特定日期范围内的 Linux tar 文件

我有一些文件的名称以 YYYYMMDD 开头,如下所示: 20160221_143223_Report.csv 20160222_121223_Report.csv ... 20160229_141223_Report.csv 20160301_171223_Report.csv 我想要压缩文件名中包含“Report”且名称对应 1-8 天前的文件。例如:今天是 3 月 1 日,所以我想要压缩 2 月 22 日至 2 月 29 日(不包括今天)的文件。 files=($(ls |<HAS "Report" in filen...

Admin

是否可以同时使用括号扩展和通配符?
globbing

是否可以同时使用括号扩展和通配符?

假设我想将.ssh/authorized_keys每个用户/home目录中的文件复制到/tmp(无论出于什么原因)。我想我可以使用通配符和括号扩展来快速完成此操作,但我遇到了麻烦。我尝试使用类似的东西key_for_{*}为每个用户获取不同的文件名。我的想法是,我可以像这样复制所有内容, sudo cp */.ssh/authorized_keys /tmp/key_for_{*} 我期望/tmp有像/tmp/key_for_alice、、/tmp/key_for_james&c 这样的文件...但事实并非如此。 我在 Google 上搜索到...

Admin

递归和 Windows attrib 命令
globbing

递归和 Windows attrib 命令

参考链接...微软在 Windows 上的 attrib 命令。 该选项的描述/d...“将 attrib 和任何命令行选项应用于目录。” attrib不带路径使用时,仅打印当前目录中文件的属性。attrib不带路径使用时,该/d选项似乎意味着“除了文件外,还对目录执行此操作”,而这并不是我从描述中得到的理解,/d所以我不确定描述是否不足,或者这是否应该是显而易见的。我知道文件和目录在 Windows 中是不同的(但在 Linux 中,目录是文件类的子类)。 通过使用只读属性进行测试+r,-r我得出了一些观察结果...... attrib prints...

Admin

无法打印作为参数的 Glob 表达式
globbing

无法打印作为参数的 Glob 表达式

我正在尝试编写一个简单的 bash 脚本,它将打印作为终端输入提供的参数。 echo "${1-nothing}" 我尝试过使用 $@ 或不使用引号。如果我输入*参数,则不会打印出 *,而是打印出 bash 文件的名称。我怎样才能简单地将 * 作为参数打印出来? ...

Admin

在 zsh 中使用扩展全局变量 {a..z..2} ,就像在 bash 中一样
globbing

在 zsh 中使用扩展全局变量 {a..z..2} ,就像在 bash 中一样

在zsh和bash您都可以: > echo {1..10} 1 2 3 4 5 6 7 8 9 10 > echo {a..z} a b c d e f g h i j k l m n o p q r s t u v w x y z > echo {1..10..2} #range 1 to 10 in steps of 2 (i.e. skipping 1) 1 3 5 7 9 但在现代bash(在 v5.x 中测试)中您可以: > echo {a..z..3} # a through z chars, but in step...

Admin

使用 bash 列出所有隐藏子目录的大小-奇怪的通配符行为
globbing

使用 bash 列出所有隐藏子目录的大小-奇怪的通配符行为

我想显示一些关于隐藏子目录的信息,但注意到一种我不理解的通配符行为。 ls .*展开到 pwd、父目录路径和所有隐藏的子目录路径,然后列出所有这些目录的内容。这样就好了。 du -s .*另一方面,似乎只会扩展到 pwd 和父目录路径,因为它只列出了这些的大小。我不明白为什么它的行为与 的行为不同ls。 使用du -s .[^.]*解决了实际问题,因为它列出了所有隐藏目录的大小。我知道这有效,但为什么不起作用du -s .*? ...

Admin

ZSH 和 globstar 匹配子目录中的所有文件,但不匹配目录
globbing

ZSH 和 globstar 匹配子目录中的所有文件,但不匹配目录

我可以做这个: $ grep 'text' foo/* foo/**/* 但问题是它扩展以列出所有文件和目录,所以我收到一堆这样的错误: grep: foo/a: Is a directory grep: foo/bar/b: Is a directory grep: foo/bar/c: Is a directory grep: foo/bar/c/d: Is a directory 我的问题是,是否存在可以用来仅匹配文件的 globstar 模式? 请注意,有些目录可能包含扩展名.,而有些文件可能没有扩展名,因此**/*.*不起作用。 此外,这个问题...

Admin

如何使用 sftp“ls”命令查找子目录中的所有文件,包括以“。”开头的文件。
globbing

如何使用 sftp“ls”命令查找子目录中的所有文件,包括以“。”开头的文件。

我需要使用命令获取子目录中包含的文件列表,包括以“.”开头的文件名sftp ls。例如,我在远程的目录结构是: root_folder | + folder_1 | +.ready | + folder_2 | + folder_3 +.ready +my_tar.tar 从根文件夹我可以发出以下命令ls -1 */*: folder3/my_tar.tar 如果我包含-aegls -1a */*选项,我会得到与上面相同的结果,即未列出隐藏文件。 通过使用,ls ...

Admin

QPDF:反转要附加的文件的顺序
globbing

QPDF:反转要附加的文件的顺序

举例qpdf来说: # To merge (concatenate) all the pages of a list of PDF files and save the result as a new PDF: qpdf --empty --pages <file1.pdf> <file2.pdf> <file3.pdf> -- <output.pdf> 需要将特定目录中的一组 .pdf 文件(文件名中有空格)连接起来: # Concatenate Drafts file to ../concatDrafts...

Admin

bash:按掩码列出文件并避免不匹配的掩码
globbing

bash:按掩码列出文件并避免不匹配的掩码

这是我的脚本(简化): cd /etc; for f in *.{conf,cfg,foo}; do echo $f; done 它输出类似 adduser.conf apg.conf ... vdpau_wrapper.cfg *.foo (仅举例) 就目前而言,我使用类似 for f in *.{conf,cfg,foo}; do test -f $f && echo $f; done 因为*.foo(没有与掩码匹配的文件) *.ext有没有更方便的解决方案(例如,如果没有找到这样的文件就不列出)? 换句话说:*....

Admin

如何用 bash 匹配字符串中的空格?
globbing

如何用 bash 匹配字符串中的空格?

ls Session 9 - Terminal Value.mp4 现在我想删除它。 shopt -s dotglob rm -rf .*.mp4 它不起作用,文件Session 9 - Terminal Value.mp4仍然在那里。.可能无法匹配空格。 ...

Admin

如果星号 (*) 与字符串相连,bash 是否有自动转义星号的设置?
globbing

如果星号 (*) 与字符串相连,bash 是否有自动转义星号的设置?

我正在尝试调试为什么脚本没有在我的服务器上执行我想要的操作。在测试时,我发现了一个奇怪的现象。我有一个目录,大致如下所示: bash-4.3# ls -l ./ 共 0 -rw-r--r-- 1 root root 0 8月6日 05:46 db.local.php -rw-r--r-- 1 root root 0 8月 6 05:46 global.php -rw-r--r-- 1 root root 0 8月6日 05:46 local.php -rw-r--r-- 1 root root 0 8月 6 05:46 someOther.global.p...

Admin

ZSH:带前缀的 glob
globbing

ZSH:带前缀的 glob

是否可以向 shell glob 扩展添加“前缀”?我的用例如下,我有一个程序需要重复选项标志来传递多个文件作为输入: $ ls foo.txt bar.txt baz.txt $ ./some-script.sh -a foo.txt -a bar.txt -a baz.txt 我希望能够使用某种扩展来添加'-a '到 的每个项目中*txt。这可能吗?用 zsh?bash? ...

Admin

删除除符合特定模式的子目录之外的所有子目录
globbing

删除除符合特定模式的子目录之外的所有子目录

我想删除给定目录中除符合特定模式的目录之外的所有子目录和文件: example_dir/model-*/gen-*/share/** 常规设置:我生成了多个模型(> 100),每个模型都有 >=1 代。这些模型(例如example_dir/model-0/gen-0/)内有多个目录和子目录。 期望结果:我想删除除匹配项之外的所有目录和文件: example_dir/model-*/gen-*/share/ 在每个单独的模型/代中,它都会是这样的吗?: rm -rf !(share) ...

Admin