使用shell脚本发送文件至企业微信机器人的脚本
时间: 2024-06-09 10:07:44 浏览: 155
#!/bin/bash
# 设置企业微信机器人的URL和密钥
url="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
# 将文件路径作为参数传入脚本
file=$1
# 判断文件是否存在
if [ ! -f "$file" ]; then
echo "文件 $file 不存在!"
exit 1
fi
# 生成JSON数据
json="{\"msgtype\":\"file\",\"file\":{\"media_id\":\"@${file}\",\"filename\":\"${file}\"}}"
# 发送POST请求并获取响应
response=$(curl -s -H "Content-Type: application/json" -X POST -d "$json" "$url")
# 判断响应结果
if [ "$(echo $response | jq -r '.errcode')" = "0" ]; then
echo "文件已成功发送至企业微信机器人!"
else
echo "发送文件至企业微信机器人失败,错误代码:$(echo $response | jq -r '.errcode')"
exit 1
fi
exit 0
说明:
- 首先需要设置企业微信机器人的URL和密钥,其中URL中的“XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX”需要替换成自己机器人的密钥。
- 然后将文件路径作为参数传入脚本。
- 判断文件是否存在,如果不存在则输出错误信息并退出脚本。
- 生成JSON数据,其中media_id为“@文件路径”,filename为文件名。
- 发送POST请求并获取响应,使用jq工具解析响应结果。如果errcode为0,则发送成功,否则发送失败。
- 最后根据发送结果退出脚本。
阅读全文