You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过curl请求(Bash脚本)从大华IP摄像头拍摄带时间戳命名的快照?

使用Bash脚本+curl从大华IP摄像头获取快照并以时间戳命名

大华IP摄像头通常支持通过HTTP API获取快照,下面是直接可用的Bash脚本方案:

完整脚本示例

#!/bin/bash

# 配置摄像头参数,根据实际情况修改
CAMERA_IP="192.168.1.100"
USERNAME="admin"
PASSWORD="your_camera_password"
SAVE_DIR="./camera_snapshots"

# 创建快照保存目录(不存在则自动创建)
mkdir -p "$SAVE_DIR"

# 生成格式为「年月日_时分秒」的时间戳文件名
TIMESTAMP=$(date +"%Y%m%d_%H%M%S")
OUTPUT_FILE="${SAVE_DIR}/dahua_snap_${TIMESTAMP}.jpg"

# 发送curl请求获取快照
curl -u "${USERNAME}:${PASSWORD}" "http://${CAMERA_IP}/cgi-bin/snapshot.cgi" -o "$OUTPUT_FILE"

# 验证请求是否成功
if [ $? -eq 0 ]; then
    echo "快照已成功保存至: $OUTPUT_FILE"
else
    echo "快照获取失败,请检查:摄像头IP/端口、用户名密码、网络连通性"
fi

关键细节说明

  • 认证方式:大华摄像头默认使用HTTP基本认证,curl -u参数直接传递用户名和密码即可
  • API路径:绝大多数大华摄像头的快照API路径是/cgi-bin/snapshot.cgi,如果此路径无效,可查看设备手册确认型号对应的API路径
  • 时间戳格式:date +"%Y%m%d_%H%M%S"生成的时间戳便于按时间排序,你可以根据需求修改格式(比如添加毫秒:date +"%Y%m%d_%H%M%S_%3N")
  • HTTPS支持:如果摄像头启用了HTTPS,将URL中的http改为https,若使用自签证书,需添加-k(或--insecure)参数忽略证书验证:
    curl -k -u "${USERNAME}:${PASSWORD}" "https://${CAMERA_IP}/cgi-bin/snapshot.cgi" -o "$OUTPUT_FILE"
    
  • 自定义端口:如果摄像头修改了HTTP端口,需在URL中指定,例如端口为8080时:http://${CAMERA_IP}:8080/cgi-bin/snapshot.cgi

内容的提问来源于stack exchange,提问作者alperenkilic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 03:15:51