gpt4 book ai didi

linux - 在 linux 中截断日志文件后,新创建的文件充满了许多\0

转载 作者:太空宇宙 更新时间:2023-11-04 10:57:55 25 4
gpt4 key购买 nike

首先给出shell代码:

#!/bin/bash
filename=$1
if [ -e $filename ] ; then
yesterday=`date -d yesterday +%Y%m%d`

cp $filename $filename.$yesterday
now=`date '+%Y-%m-%d%H:%M:%S'`
echo "========split log at $now========" > $filename
echo "========split log $filename to $filename.$yesterday at $now========"
else
echo "$filename not exist."
fi

shell运行成功,打印字符串========split log at $now========到新创建的$filename。但是在这个字符串下面,\0的很多字节也写入了$filename,如下所示:

我的信誉分不到10,发不了图片,所以给图片链接:http://i.stack.imgur.com/QF0F2.jpg

最佳答案

我编写的 shell 代码旨在截断由 nohup 创建的日志文件。我的启动命令原来是这样的:nohup $cmd > $logPath 2>&1 & ,现在我把它改成nohup $cmd >> $logPath 2>&1 & .有人告诉我,当使用>的模式时日志写入程序会记住当前日志的位置,截断日志后,程序会继续该位置。

关于linux - 在 linux 中截断日志文件后,新创建的文件充满了许多\0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28183368/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com