打开文件夹中的最新文件 (jpg)

打开文件夹中的最新文件 (jpg)

我的 IP 摄像机每分钟将一个视频(.mp4文件)和一张图片(.jpg文件)保存到我的 Pi,它设置为 FTP 服务器。

我想每5分钟用ImageMagick打开最新的图片。

文件名包含时间戳,所以我不知道如何在终端命令中调用 JPEG 文件。文件名如下所示: 。我可以通过进入文件夹并运行来01_20160719210835.jpg找到文件夹中的最新文件名。但是我如何根据此信息在 ImageMagick 中打开图像?cdls -t *.jpg | head -1

另外,我怎样才能删除.mp4每小时的 s?

答案1

我从未使用过 ImageMagick,所以我不知道它的命令是什么。我推测/希望你知道如何打开文件以其名字命名。(我可以想象它可能是像 或这样一些琐碎而简单的事情。)imagemagick filenameopen filename

你快完成了:你应该能够用

命令“$(ls -t *.jpg | head -1)”

笔记:

  • 引文是答案的重要组成部分。
  • 如果文件名中包含换行符,此操作将会失败。
  • 如果您的目录名称以 结尾.jpg,则可能会失败。

答案2

这是我的脚本,用于将我的徽标添加到最新图像并删除所有视频文件,我每 5 分钟通过 cron 运行一次

#!/bin/bash
cd /mnt/dietpi_userdata/webcam/dump
composite -geometry +30+10 /mnt/dietpi_userdata/webcam/logo.png "$(ls -t *.jpg | head -1)" /mnt/dietpi_userdata/webcam/webcam.jpg

convert /mnt/dietpi_userdata/webcam/webcam.jpg -gravity North -pointsize 40 -annotate +30+10 'my homepage' /mnt/dietpi_userdata/webcam/webcam.jpg

rm /mnt/dietpi_userdata/webcam/dump/*.mp4

谢谢你的帮助

答案3

您想用 ImageMagick 做什么?如果您只想显示图像并按文件名中的时间戳排序,您可以这样做:

display "$(ls *.jpg | sort -k1.4 | tail -1)"

该参数-k1.4使得其按第四个字符排序(01_一开始就忽略)。

相关内容