很简单, 打开文件/写入文件.
bash脚本: echo "message" >> /path/to/yourlogfile
c: 这个就不用说了吧, fopen("/path/to/yourlogfile", "a"); 然后调用fwrite
如果希望回printf/fprintf(stderr,等标准输出/标准错误输出直答接输出到日志, 用p2:
#include <stdio.h>
#include <unistd.h>
int main()
{
FILE *fp = fopen("log.txt", "a");
if(fp){
int no = fileno(fp);
p2(no, 1);
p2(no, 2);
printf("stdout log\n");
fprintf(stderr, "stderr log\n");
fclose(fp);
}
return 0;
}
『贰』 linux系统每天自动巡检,输出到一个文件里
先把20台服务器的ssh登陆语句写进一个文本文件中host_name.txt,确保有一台机器可以通其他的19台服务器。
ssh跳转格式这样写:ssh 用户名@ip
#!/bin/bash
check_sev()
{
ssh_ip=$1
$ssh_ip<<!
vmstat110
iostat110
exit
!
echo
}
echo`date"+%D"`>>check_host.log
whilereadline
do
echo"---------------------------------">>check_host.log
echo"$linedate'+%F%T'">>check_host.log
check_sev$line>>check_host.log
done<host_name.txt
将上面的脚本放在一个主机上,用crontab提交每日任务,
30 10 * * * 上面脚本的目录地址
将以上内容写进xx.cron中,crontabxx.cron 提交就是每天的10:30运行你上面的检查脚本。
具体crontab的用户你可以网络。
====================================================================
第一个脚本本人纯手打,并没有试,还有不少漏洞,你可以自行修改,比如你这个放脚本的服务器必须能无密码ssh登陆其他19个主机,脚本最好加上错误日志记录,防止某些错误导致脚本异常终止。你可以多调试几遍,有问题的在一起交流。
『叁』 如何让crontab执行脚本后并且把日志输出到另一个文件
直接crontab -e添加执行脚本,然后给执行脚本加个重定向到文件就行了。
例如:3023***/path/to/shell/script >> /path/to/log/file #表示每晚的23:30执行/path/to/shell/script脚本,并且把结果重定向输出到/path/to/log/file文件。
crontab参数:
-e:编辑该用户的计时器设置;
-l:列出该用户的计时器设置;
-r:删除该用户的计时器设置;
-u<用户名称>:指定要设定计时器的用户名称。
crontab的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下: minute hour day month week command,时间字段都是整数, command:要执行的命令,可以是系统命令,也可以是自己编写的shell脚本文件。 在以上各个字段中,还可以使用以下特殊字符:
星号(*):代表所有可能的值,全部。
逗号(,):可以用逗号隔开的值指定一个列表范围。
中杠(-):可以用整数之间的中杠表示一个整数范围。
正斜线(/):可以用正斜线指定时间的间隔频率。
『肆』 linux中的日志怎么把刚跑的日志拷到另一个文件中
试试用文件同步软件:rsync
『伍』 linux 如何将守护进程的日志写到自己指定的日志文件
修改日志文件的路径需要修改日志的配置文件/etc/syslog.conf修改对应服务的日志输出目录就可以了
『陆』 linux下怎么把日志拷贝出来
1、首先进入系统日志,所有服务的登录的文件或错误信息文件,都在/var/log/记录下来专 cd /var/log/。
『柒』 求一个在linux下的函数:将日志打印到文件中 (重点实现要求1、2即可)
Python 的 loggong模块能完美完成你的要求。
『捌』 如何让crontab执行脚本后并且把日志输出到另一个文件
直接crontab -e添加执行脚本,然后给执行脚本加个重定向到文件就行了。
例如:3023***/path/to/shell/script >> /path/to/log/file #表示每晚的23:30执行/path/to/shell/script脚本,并且把结果重定向输出到/path/to/log/file文件。
crontab参数:
-e:编辑该用户的计时器设置;
-l:列出该用户的计时器设置;
-r:删除该用户的计时器设置;
-u<用户名称>:指定要设定计时器的用户名称。
crontab的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下: minute hour day month week command,时间字段都是整数, command:要执行的命令,可以是系统命令,也可以是自己编写的shell脚本文件。 在以上各个字段中,还可以使用以下特殊字符:
星号(*):代表所有可能的值,全部。
逗号(,):可以用逗号隔开的值指定一个列表范围。
中杠(-):可以用整数之间的中杠表示一个整数范围。
正斜线(/):可以用正斜线指定时间的间隔频率。
『玖』 Linux下运行springboot项目jar包,启动日志输出教程
启动之后,会在jar所在目录生成一个nuhup.log日志文件,记录控制台的日志输出。
备注:主要看符号两边: ">" 对应输出什么和输出到哪里;
输出分为标准输出和错误输出,标准输出就是全输出,输出控制台信息;错误输出只是输出错误日志信息;
因此上面我们执行的 ***.jar >nohup.log 2>&1命令,可以拆解成 > nohup.log 和 2> &1两个输出,只看符号“>”左边输出部分,分别代表默认标准输出到一个地方,然后错误日志输出到另一个地方,咱们后面再讲输出到什么地方。
输出到哪,分为输出到指定路径日志文件和重定向位置。
1.指定路径:如下:> /data/work/log.log 这样便是指定输出到路径/data/work/log.log文件。
Linux上有一个特例路径/dev/null ,这路径就好像永久删除的回收站,当我们不需要输出任何信息时,就可以将输出指向/dev/null,那就不会有任何输出文件。
2.至于重定向,就是将文件重定向到一个地址,如下:
> &1 重定向到标准输出的地址,啥意思,就是输出到已指定的标准输出的地址。
> &2 重定向到错误输出的地址,就是输出到已指定的错误输出的地址。
比如>nohup.log 2>&1 ,意思是前面默认标准输出到了nohup.log日志下,后面错误输出也指向标准输出的地址,也即nohup.log日志下。
命令后面加的 & ,可让命令在后台执行,否则关闭会话会停止程序。
(1)nohup java -jar ***.jar >/data/log.log 2>/data/err.log &
解释:标准日志输出到/data/log.log文件,错误日志输出到/data/err.log文件。
(2)nohup java -jar ***.jar >/data/log.log 2>&1 &
解释:标准日志输出到/data/log.log文件,错误日志重定向也输出到/data/log.log文件。
(3)nohup java -jar ***.jar >/dev/null 2>/data/err.log &
解释:标准日志输出到/dev/null,也就是不输出标准日志,错误日志输出到/data/err.log文件。
一般采用上面(3)只输出错误日志就可以了,有需要的按照(1)进行输出。
『拾』 linux 怎么将一个会更新的日志不停输出到另一个文件
你好,如果linux机器上有一个日志文件不停的在更新,现在需要当它更新时把更新的机型同步到另外一个文件中