你知道linux下crontab中的%有啥特殊意义吗?

发布时间 - 2021-09-06 00:00:00    点击率:

下面由linux系统教程栏目给大家介绍linux下crontab中%的使用,及其特殊含义,希望对需要的朋友有所帮助!

linux下crontab中%的使用

crontab中下面的脚本不能

 0 1 * * *   (cd /u01/prod; rsync -avz app 192.168.0.192:/u01/prod/) &>/home/applprod/backuplog/rsync_`date +%Y%m%d_%H%M%S`.log

执行的时候,/var/log/messages日志中显示:

Sep 22 22:50:01 ebsapp CROND[13389]: (applprod) CMD ((cd /u01/prod; rsync -avz app 192.168.0.192:/u01/prod/) &>/home/applprod/backuplog/rsync_`date +)

好像是命令被截断的样子。

于是我把要执行的命令都封装到一个脚本中,放到crontab中执行。

但是稍后查看crontab的manpage时发现,%在crontab中有特殊含义:

The  "sixth"  field (the rest of the line) specifies the command to be run.  The entire command portion of the line, up to a new-
       line or % character, will be executed by /bin/sh or by the shell specified in the SHELL variable of the cronfile.   Percent-signs
       (%)  in  the  command, unless escaped with backslash (\), will be changed into newline characters, and all data after the first %
       will be sent to the command as standard input.

到这里问题已经清楚了,并不是crontab命令被截断,而是被理解成另外的含义了,解决的方法也有了,就是将%进行转义,修改之后的脚本变成了:

03 23 * * * (cd /u01/prod; rsync -avz app 192.168.0.192:/u01/prod/) &>/home/applprod/backuplog/rsync_`date +\%Y\%m\%d_\%H\%M\%S`.log


# linux  # 封装  # var  # 中有  # 我把  # 给大家  # 稍后  # 变成了  # 清楚了  # messages  # Sep  # date 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  如何在云主机上快速搭建多站点网站?  Firefox Developer Edition开发者版本入口  如何在建站之星绑定自定义域名?  如何在局域网内绑定自建网站域名?  如何快速搭建高效WAP手机网站?  黑客如何利用漏洞与弱口令入侵网站服务器?  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  网站制作免费,什么网站能看正片电影?  如何快速生成橙子建站落地页链接?  谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  中国移动官方网站首页入口 中国移动官网网页登录  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  如何在橙子建站上传落地页?操作指南详解  如何使用 jQuery 正确渲染 Instagram 风格的标签列表  JS去除重复并统计数量的实现方法  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  详解Android图表 MPAndroidChart折线图  如何快速搭建二级域名独立网站?  laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  谷歌Google入口永久地址_Google搜索引擎官网首页永久入口  网站制作壁纸教程视频,电脑壁纸网站?  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  如何在腾讯云服务器快速搭建个人网站?  phpredis提高消息队列的实时性方法(推荐)  C++用Dijkstra(迪杰斯特拉)算法求最短路径  JavaScript如何操作视频_媒体API怎么控制播放  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】  Laravel定时任务怎么设置_Laravel Crontab调度器配置  详解Huffman编码算法之Java实现  如何在IIS管理器中快速创建并配置网站?  html如何与html链接_实现多个HTML页面互相链接【互相】  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  如何批量查询域名的建站时间记录?  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  如何在建站主机中优化服务器配置?  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优  Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  Laravel如何实现API版本控制_Laravel API版本化路由设计策略  如何实现javascript表单验证_正则表达式有哪些实用技巧  Python正则表达式进阶教程_复杂匹配与分组替换解析  EditPlus中的正则表达式 实战(2)  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?