目录
-
nohup日志回滚
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://yellowtop.blogbus.com/logs/3178554.html
利用apache的rotatelogs命令实现WebLogic启动命令的nohup的日志回滚:
每天写一个日志:
nohup ./startWebLogic.sh | /opt/hpws/apache/bin/rotatelogs ./logs/nohuplog 86400 &
每200M写一个日志:
nohup ./startWebLogic.sh | /opt/hpws/apache/bin/rotatelogs ./logs/nohuplog 200M &
每200M写一个日志,按时间日期命令名:
nohup ./startWebLogic.sh | /opt/hpws/apache/bin/rotatelogs ./logs/nohup_%Y%m%d%H%M.log 200M &
-
不停服务清空nohup.out日志文件脚本
备份nohup日志文件脚本
在nohup.out 目录下新建nohup_backup.sh 并复制如下代码
#!/bin/bash
today=`date +"%Y%m%d"`
newfile="nohup$today.out"
echo "Backup log file"
echo "Start copy nohup.out to $newfile ..."
cp nohup.out $newfile
echo "Copy $newfile finished"
echo "Start clear nohup.out ..."
cp /dev/null nohup.out
echo "Clear nohup.out finished"
执行: ./nohup_backup.sh
该脚本会把当前的nohup.out文件先复制为nohupxxxx-yy-mm.out 然后清空nohup.out文件。
备注: chmod a+x nohup_backup.sh 权限 touch nohup_backup.sh 文件 vim 编辑
-
nohup 日志过大 的处理策略
输出的时候用覆盖追加的方式即可.
nohup sh xxxx.sh >> /var/log/xxxx.log 2>&1 &
然后可通过cat /dev/null > /var/log/xxxx.log 清空该文件并释放空间
可以试试 echo “” >> xxx.log
-
nohup命令
0、1和2分别表示标准输入、标准输出和标准错误信息输出,可以用来指定需要重定向的标准输入或输出。
1指标准输出;2指错误输出,所以写成这样:command 1>output 2>error & ,正常的输出在output文件里,错误的输出在error文件里,command >output 2>error &
(1可以省略)
忽略错误输出:command 1>output 2>/dev/null &
忽略标准输出:command 1>/dev/null 2>error &
忽略全部输出:command 1>/dev/null 2>/dev/null &
忽略全部输出:command >/dev/null 2>&1 &
错误输出和标准输出在一个文件:command 1>output 2>&1 &
错误输出和标准输出在一个文件:command 1>output 2>output & (X这种方式错误)
这样的文件输出,每次运行会覆盖现有的文件,如果我们希望追加而不是覆盖,那么就用>>符号,这样命令就是: command 1>>output 2>>error &
如果想退出窗口乃至退出登录仍然保持程序运行,再加上nohup,形如:nohup command 1>output 2>&1 &
nohup sh run.sh 1>run_info.log 2>run_error.log &
解释如下:
2>
表示把标准错误(stderr)重定向,标准输出(stdout)是1。
尖括号后面可以跟文件名,或者是&1, &2,分别表示重定向到标准输出和标准错误。
2> &1
1> &2
2> stderr.log
1> stdout.log