feh 对文本文件发出警告

feh 对文本文件发出警告

我如何摆脱这些警告feh?我正在尝试使用目录中的图像运行幻灯片放映。为什么feh尝试打开该目录中的文本文件?

feh WARNING: images/temp.txt - No Imlib2 loader for that file format

使用的命令:

feh -FxYzZ -D 15  images

有没有办法告诉feh只查看某些文件扩展名?

答案1

最简单的方法是添加-q选项(又名--quiet)来抑制加载失败的非致命错误:

feh -qFxYzZ -D 15  images

并且您可能总是将 stderr 重定向到/dev/null( feh ... 2>/dev/null),但这将是相当丑陋的解决方案,因为您可能会错过重要的错误。

答案2

为什么feh尝试打开该目录中的文本文件?

man feh, “默认情况下(除非指定参数或文件列表)菲赫显示当前目录中的所有文件。”

我如何摆脱这些警告feh

feh WARNING: images/temp.txt - No Imlib2 loader for that file format

您至少有两种选择:

  1. 使用菲赫-q(或--quiet)选项;
  2. 将图像文件列表传递给菲赫。您可以通过多种方式执行此操作,例如:

    • 将列表放入文件并使用菲赫-f(或--filelist)选项:feh -f imagelist.txt
    • 使用传统的通配符:feh *.jp*g
    • 通过管道将文件列表传输到菲赫寻找或类似的(这将允许您包含子目录中的文件):find . -iname '*.jp*g' | feh -f -
    • 使用环球星globbing(同样允许您包含子目录中的文件):feh **/*.jp*g

有没有办法告诉feh只查看某些文件扩展名?

第 2 点中列出的方法都可以实现这一目标:)

答案3

feh期望在目录中仅找到图像文件。如果其中存在非图像文件,它将失败并显示您所描述的诊断消息。

您可以运行feh-u--unloadable获取它无法加载的文件列表。您还可以使用-f或指定要显示的带有图像文件名的文本文件--filelist

有关更多信息,请参阅feh系统手册。

相关内容