shell脚本如何使用curl发送文件至企业微信机器人
时间: 2024-06-09 18:08:11 浏览: 17
可以使用以下的 shell 脚本来发送文件至企业微信机器人:
```bash
#!/bin/bash
# 设置企业微信机器人的 webhook 地址和文件路径
WEBHOOK_URL="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=<your_key>"
FILE_PATH="/path/to/your/file"
# 发送文件
curl -s $WEBHOOK_URL \
-H 'Content-Type: application/json' \
-d '
{
"msgtype": "file",
"file": {
"media_id": "@'$FILE_PATH'"
}
}'
```
注意,`<your_key>` 需要替换为你的企业微信机器人的 key。另外,该脚本使用了 curl 命令来发送文件,因此需要确保操作系统已经安装了 curl 命令。
相关问题
使用shell脚本发送文件至企业微信机器人的脚本
#!/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,则发送成功,否则发送失败。
- 最后根据发送结果退出脚本。
Groovy 使用curl 向企业微信机器人发送通知消息
可以使用以下命令使用curl向企业微信机器人发送通知消息:
```
curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=机器人的key' \
-H 'Content-Type: application/json' \
-d '
{
"msgtype": "text",
"text": {
"content": "Hello World"
}
}'
```
其中,`机器人的key`需要替换为你自己企业微信机器人的key,`Hello World`可以替换为你想要发送的文本消息内容。
注意,需要在企业微信后台配置机器人,并获取机器人的key才能发送消息。另外,如果要发送的消息内容较长,可以使用`markdown`消息类型,具体用法可以参考企业微信的开发文档。