如何在linux中为我的ip摄像头自动重命名、复制和删除文件?

如何在linux中为我的ip摄像头自动重命名、复制和删除文件?,linux,ftp,webcam,ip-camera,Linux,Ftp,Webcam,Ip Camera,我有一个ip摄像头,每隔几秒钟自动将图像ftps到我的linux Ubuntu服务器web服务器上的目录中。我想制作一个简单的网络摄像头页面,它引用一个静态图像,并且每隔几秒钟刷新一次。问题是,我的ipcamera固件会自动为每个文件命名一个date_time.jpg类型的文件名,并且不具有反复使用相同文件名覆盖的选项 我希望在我的linux机器上运行一个脚本,自动将一个新文件复制到另一个目录中,在这个过程中重命名它,然后删除原始文件 问候,, GlenInotify()可以按照您的要求进行设置

我有一个ip摄像头,每隔几秒钟自动将图像ftps到我的linux Ubuntu服务器web服务器上的目录中。我想制作一个简单的网络摄像头页面,它引用一个静态图像,并且每隔几秒钟刷新一次。问题是,我的ipcamera固件会自动为每个文件命名一个date_time.jpg类型的文件名,并且不具有反复使用相同文件名覆盖的选项

我希望在我的linux机器上运行一个脚本,自动将一个新文件复制到另一个目录中,在这个过程中重命名它,然后删除原始文件

问候,,
Glen

Inotify()可以按照您的要求进行设置,但最好使用一个简单的web脚本(PHP、Python、Perl等)来提供目录中的最新文件。

我编写了一个快速脚本,您需要取消对rm-f行的注释以使其删除内容:)

它当前打印它将要运行的命令,因此您可以更放心地进行测试

您还需要在脚本顶部附近设置WORK_DIR和DEST_DIR变量

#!/bin/bash
#########################
# configure vars

YYYYMMDD=`date +%Y%m%d`
WORK_DIR=/Users/neil/linuxfn
DEST_DIR=/Users/neil/linuxfn/dest_dir
##########################

LATEST=`ls -tr $WORK_DIR/$YYYYMMDD* 2>/dev/null | tail -1`
echo "rm -f $DEST_DIR/image.jpg ; mv $LATEST $DEST_DIR/image.jpg"
#rm -f $DEST_DIR/image.jpg ; mv $LATEST $DEST_DIR/image.jpg
当我在笔记本电脑上运行时,它会给我以下输出:


mba1:linuxfn neil$bash renamer.sh
rm-f/Users/neil/linuxfn/dest_dir/image.jpg;mv/Users/neil/linuxfn/20150411-2229/Users/neil/linuxfn/dest_dir/image.jpg

非常感谢您提供的脚本示例。我要试着用它作为起点来达到我想要的。我已经学习了权限、shell等方面的知识,但还没有完全了解,但由于您的评论和示例,我正在取得进展。你能解释一下*2>/dev/null是什么意思吗?我发现在脚本中使用*会导致ls命令读取所有文件和子目录。并且还发现2>/dec/null意味着如果有错误,放弃输出。我已经编辑了你给我的开始,它正在工作。现在我只需要弄清楚如何在后台启动它,并添加一个10秒的计时器和循环命令;做事;睡眠10;完成