最近在做在dos命令下执行php的功能,为了使执行后的结果方便记录,于是需要加一个生成日志的功能。很简单,一起来学习一下吧。
windows
为了满足日志文件是按日期生成的。
第一步:设置当前时间的命令(2016/08/04 周四)。
第二步:转化当前时间日期为标准格式(2016/08/04)。
第三步:将/转为-(2016-08-04),为什么会有第三部命令呢,因为windows获取后的日期是2016/08/04的,所以需要转一下。
第四步:将日期拼上日志文件后缀.log。
第五步:就是将执行后的内容写入到指定目录下的日志文件里,记得执行的文件里要记录的内容用echo输出,这样才能顺利写入日志文件里。
@echo off
set nowDate=%date%
set tmp=%nowDate:~0,-3%
set ymdDate=%tmp:/=-%
set file=%ymdDate%.log
@echo on
D:\wamp\bin\php\php5.4.3\php.exe index.php /Ceshi/server >> D:\wamp\www\logs\rabbitmq\%file%
注:
创建目录
md d:\aaa
%名称% 相当于一个变量
> 一个指向日志文件下次写入会覆盖日志内容
>>两个在日志文件内容基础上进行追加
@echo off 如果这行命令是写在.bat文件里的话,有这行代码,双击执行,dos里不会展示出这些命令,如果没有,是会展示.bat里写的命令的。
@echo on 允许在命令行显示。
linux
这个就比较简单了,linux命令比较强大。
按日期创建目录
mkdir `date +%y%m%d`
将日志内容写入日志文件,这里简单写了,PHP程序其实还是和上面用法一样的。
echo ‘日志内容‘ >> `date +%y%m%d`.log
注:date后面一定要有一个空格,不然不识别,会报错。` 这个符号是英文状态下的tab键上面的那个按键~`。