Windows自带的任务计划程序
发表于|更新于|Windows
1 | schtasks /Delete /tn "MyScript" /f |
1 | schtasks /create /tn "MyScript" /tr "C:\software\cron\start.bat" /sc minute /mo 1 /rl HIGHEST /f |
一般情况下,这样配置即可
start.bat 脚本内容:
1 | # 进入脚本所在目录 |
文章作者: 张理坤
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 杂烩饭!
相关推荐
2025-12-04
使用s6-Overlay来管理多进程容器
容器使用最佳实践是:一个容器运行一个进程,进程退出容器也就退出,很优雅是不是?但是…在日常工作中总有一些你懂的的原因,就需要多个进程塞在一个容器里面,那么我们可以怎么来管理容器内进程呢?这个时候容器内的进程管理工具就派上用场了。s6-Overlay 就是其中之一s6-Overlay 官方 github 地址:https://github.com/just-containers/s6-overlay v2 和 v3 有配置区别,这里以 v3 版本为例。 安装容器是通过判断 pid=1 的进程来判断容器是否工作正常的,也就是说 s6-Overlay 进程 pid 为 1 通过官方安装脚本来安装, 在 Dockerfile 里加上这些配置: 需要安装 xz 解压缩工具,不然 docker build 的时候会报错。 目录结构 其中 run 和 finish 都是可执行文件(bash 或 python 或二进制等),容器启动会运行 run 程序,如果 run 意外退出则会运行 finish,并且会被自动拉起。整个过程容器不会退出。 type 文件的内容可以是 ones...
2026-07-14
自动清理日志脚本
公司的业务服务会打日志到磁盘, 程序已经做了日志切割, 时间一长磁盘占满会导致业务异常, 普通的清理逻辑是使用 crontab 定时删除文件, 比如每天 1 点删除创建日期超过 30 天的日志文件, 大部分情况下工作是 OK 的, 但是执行周期太长, 如果当天日志暴增, 不能及时删除文件. 也会有隐患, 优化版脚本如下: 日志清理分以下几种: 历史日志, 并且未在写入的日志, 这种可以直接删除掉. 当前正在写入的日志, 需要清理, 这种不能删除, 可以通过清空文件的方式来释放空间 set -euo pipefail 的作用:set -e: 脚本中有任何一条命令执行失败, 整个脚本就失败set -u: 脚本中的变量有任何一个变量为空, 整个脚本执行失败-o pipefail: 脚本中的管道中任何一条命令执行失败, 也会认为脚本执行失败 脚本内容: 磁盘使用率低于 80% 不会执行操作, 所以可以缩短 crontab 执行的间隔, 我一般设置成 5 分钟检测一次, crontab 内容: 注意: crontab 最后需要保留一个空行
2025-06-05
ubuntu常用配置记录
以 Ubuntu 的尿性,总是会搞一些奇奇怪怪的“创新”,所以本文只针对于我在使用的 Ubuntu 系统,当前版本是 24.04 LTS,版本相差太大就不具有参考意义了。 修改国内源 编译环境安装 切换语言环境 Ubuntu 网卡配置文件图形界面版 Ubuntu 修改网卡配置应该首选图形界面修改,服务器版优先使用 nmtui 来修改。 查看网卡硬件信息 网卡配置文件 ubuntu 从 17.10 开始,已放弃在 /etc/network/interfaces 里固定 IP 的配置,而是改成 netplan 方式,配置写在 /etc/netplan/01-netcfg.yaml 或者类似名称的 yaml 文件里 dhcp 配置 然后执行 netplan try 使配置生效,不用重启网卡。 临时修改网卡 DNS 地址 永久修改网卡 DNS resolv.conf 文件就是根据/etc/resolvconf/resolv.conf.d 目录中的这几个文件生成的。 查看现在正在使用的 DNS 启动速度慢等在 a start job...
2026-07-14
Linux的crontab无法执行的一些问题
crontab 是 linux 平台的定时任务系统,不过有时候可以运行的命令或脚本在 crontab 里面就是不运行,下面找了一些可能的原因以及解决方案。 看不到日志一般来说,crontab 的任务控制台输出会打到 /var/spool/mail/<username> 里面,然后通过 email 发出去crontab 服务的运行的日志一般都在 /var/log/cron 里面,这个日志可以看到任务有没有执行 如果想将命令输出内容重定向到其他文件,可以在命令后添加 >> xxx.log 2>&1, 不加 2>&1 错误日志看不到 环境变量的问题crontab 环境变量和登录 shell 查看的环境变量是不同的,比如 查看一下: 比系统的环境变量要少很多,比如 PATH 只有 /usr/bin 和 /bin, 安装在其他位置的程序是会 command not found 的,解决方法有两个: 写绝对路径 但是这个方法对于很多脚本比较麻烦,因为脚本里面可能用的是相对路径也会 command not found ...
2026-07-14
使用certbot自动申请ssl证书
certbot 可以自动申请 let’s encrypt https 证书, 并且可以自动续期,另见:使用acme.sh来自动更新https证书 申请证书前准备添加 DNS 解析域名为你需要申请 https 证书的域名,添加 A 记录到服务器 IP 安装 certbot 和 certbot nginx plugin 申请证书 以上操作除了申请证书外,还可以自动添加 https 配置到 nginx,很方便。 证书续期 添加到 root 用户的 crontab 里面就可以实现自动续期,距离到期时间太长会自动跳过续期 删除证书
2026-07-14
将wsl里的文件挂载进虚拟机
虽然不同操作系统使用起来大致类似,很多开源软件同时支持 Linux 和 Windows,就算不支持,Windows 还有 cygwin 或 WSL,Linux 也有 wine,但是我感觉这两种系统最大的区别还是文件系统,比如将 Linux 下的文件复制到 Windows,然后再复制回 Linux,得到的文件和原来的是一样的吗,答案是否定的,因为文件权限可能已经发生了变化,另外 Windows 的 NTFS 大小写不敏感,导致很多时候从 Linux 复制文件到 Windows 的时候总会弹个窗问我是否覆盖,还有 Linux 的软链接也无法复制到 Windows 里面。本人平时写代码等都是在 linux 上运行的,不过最近系统换成了 Windows,为了避免以上问题,将文件放进了 WSL 里面,同时用到了虚拟机做测试,所以想将 wsl 和虚拟机的目录进行同步,才有了这篇文章。 在 Windows 环境下找到想要共享的目录 以下 3 种都可以 在 Windows 下可以这样访问 WSL\\wsl$\发行版名,比如 \\wsl$\Ubuntu,将完整的链接复制下来。 将 \wsl...
公告
此博客为我记录运维工作总结所用,供网友阅读参考,如有侵权,请通知我,我会核实后进行处理。
欢迎加博主微信,进微信运维技术交流群:






