BASH - 在 zenity 中通过多种模式选择文件

标签 bash design-patterns filenames zenity

我对 zenity 和 bash 还很陌生。我正在尝试制作只显示扩展名为 .ogg、.aac 和 .wav 的文件选择窗口。我试过这个,但它不起作用。

option=`zenity --file-selection --file-filter=*.ogg | *.aac`

对于一个扩展,它按预期工作:

option=`zenity --file-selection --file-filter=*.ogg`

Zenity man 提供信息:

--file-filter=NAME | PATTERN1 PATTERN2
Sets a filename filter

我真的不明白我应该如何使用它。谁能告诉我一些例子?

最佳答案

特殊的 bash 符号 |和 * 需要转义(反斜杠)或引用(单引号或双引号),您已经成功了。使用单引号,参数按字面意思传递给 zenity。

如果您想要更多过滤器选择,请重复 --file-filter 选项 例如,您可能需要在文件选择窗口中使用两个过滤器“所有文件”和“音乐文件”:

zenity --file-selection --file-filter='Music files (ogg,wav,aac) | *.ogg *.wav *.aac' --file-filter='All files | *'

关于BASH - 在 zenity 中通过多种模式选择文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16267042/

相关文章:

java - 如何在 Java 中为表 JOINS 实现 DAO/DTO?

选择器的 jQuery 设计模式可以提高代码可维护性?

Python - 根据提供的模式生成文件名

c - 在C中提取文件名及其扩展名

c# - 比较两个文件名以查看它们是否是同一文件的正确方法是什么?

bash - Easy Bash if-else

bash - ftp 按日期获取最后修改的文件

c# - 只允许设置来自特定类/实例的属性

linux - 错误 TR 命令宽度 :punct: param

bash - 如何使用 'find'返回父目录