usbserver工程师手记(二)设置定时任务
概述
部分银行ukey 长时间不使用后会导致休眠,出现虽然有连接,但是读不到证书,可以用定时重置端口的办法,调用接口 http://ip/usb_server/reset_port,参数为
{"port":"B5-1-2","vid_pid":"096e:0303:0314"}
其中port 和vid_pid 的值从管理后台获得
注意需要选择开启模拟拔插
或者点进去
windows 设置定时任务
1、编辑执行文件usbportreset.ps1
$url = "http://192.168.2.245/usb_server/reset_port"
$text = @{
"port"="B5-1-2"
"vid_pid"="096e:0303:0314"
} | ConvertTo-Json
Invoke-WebRequest -UseBasicParsing $url -ContentType "application/json" -Method POST -Body $text
修改ip 为你的usbserver 的ip, 以及需要重置的port和对应的vid_pid,如果需要重置多个端口,就写多行,例如
$url = "http://192.168.2.245/usb_server/reset_port"
$text = @{
"port"="B5-1-1"
"vid_pid"="096e:0303:0314"
} | ConvertTo-Json
Invoke-WebRequest -UseBasicParsing $url -ContentType "application/json" -Method POST -Body $text
$text = @{
"port"="B5-1-2"
"vid_pid"="096e:0303:0314"
} | ConvertTo-Json
Invoke-WebRequest -UseBasicParsing $url -ContentType "application/json" -Method POST -Body $text
GUI 方式设置
打开任务计划程序,设置触发器为每周星期六的23:40 执行
操作填写
程序或脚本填
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
参数填
-ExecutionPolicy Bypass -File d:\work\usbportreset.ps1
其中d:\work\usbportreset.ps1 改成你自己的执行文件
命令行方式
打开powershell, 输入
chtasks /create /tn "usb 定时任务每周" /tr "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File D:\work\\usbportreset.ps1" /sc WEEKLY /mo 6 /st 23:40
如果是每天执行,输入
schtasks /create /tn "usb 定时任务每天" /tr "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File D:\work\usbportreset.ps1" /sc DAILY /st 23:40
效果测试
在powershell 下运行
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File D:\work\usbportreset.ps1
应该能看到ukey的灯会熄灭后点亮,如果没有,请检查执行文件中的参数
linux 设置定时任务
调整脚本usbportreset.sh 中的参数
curl -X POST -H 'Accept: application/json' -H 'Content-Type: application/json' -i 'http://192.168.2.245/usb_server/reset_port' --data '{"port":"B5-1-2","vid_pid":"096e:0303:0314"}'
把 usbportreset.sh 拷贝到工作目录,调整属性为可执行,
chmod a+x usbportreset.sh
然后在 crontab -e 配置定时脚本
每周六执行
40 23 * * 6 /root/usbportreset.sh
每天执行
40 23 * * * /root/usbportreset.sh
尾注:需要usbportreset.sh
usbportreset.ps1 文件的call me (qq258155355)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2020-07-10 线程是CPU调度和分配的基本单位。
2020-07-10 进程与线程的切换比较
2020-07-10 schedule
2020-07-10 有名 无名sem_t*
2020-07-10 关于waitpid()中的WNOHANG
2020-07-10 gdb跟踪子进程
2019-07-10 hid usb