免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1852 | 回复: 7
打印 上一主题 下一主题

请教一个分割文件的脚本 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-08-23 10:28 |只看该作者 |倒序浏览
请问如何将一个不断增大的文件,每3小时分割出一个新的文件?
比如将  a.log  在按9:00 - 12:00 分成一个文件 , 12:00 - 15:00 分成一个文件。。。

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
2 [报告]
发表于 2010-08-23 11:43 |只看该作者
看看能否装个logswitch.

或者: 将下面这个脚本放到cronjob里,每三个小时运行一次。

  1. DATE=$(date +%Y%m%d%H)
  2. LOGFILE=/XXXX/a.log

  3. mv $LOGFILE ${LOGFILE%%.*}-$DATE.log
  4. touch $LOGFILE
复制代码

论坛徽章:
1
平安夜徽章
日期:2015-12-26 00:06:30
3 [报告]
发表于 2010-08-23 11:52 |只看该作者
${LOGFILE%%.*}-$DATE.log
问下 ,%%.*啥意思 ?

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
4 [报告]
发表于 2010-08-23 11:59 |只看该作者
取文件名 点号前面的部分。

论坛徽章:
0
5 [报告]
发表于 2010-08-23 12:04 |只看该作者
不過,假如你只看到 ${ } 只能用來界定變量名稱的話,那你就實在太小看 bash 了﹗
有興趣的話,你可先參考一下 cu 本版的精華文章:
http://www.chinaunix.net/forum/viewtopic.php?t=201843

為了完整起見,我這裡再用一些例子加以說明 ${ } 的一些特異功能:
假設我們定義了一個變量為:
file=/dir1/dir2/dir3/my.file.txt
我們可以用 ${ } 分別替換獲得不同的值:
${file#*/}:拿掉第一條 / 及其左邊的字串:dir1/dir2/dir3/my.file.txt
${file##*/}:拿掉最後一條 / 及其左邊的字串:my.file.txt
${file#*.}:拿掉第一個 .  及其左邊的字串:file.txt
${file##*.}:拿掉最後一個 .  及其左邊的字串:txt
${file%/*}:拿掉最後條 / 及其右邊的字串:/dir1/dir2/dir3
${file%%/*}:拿掉第一條 / 及其右邊的字串:(空值)
${file%.*}:拿掉最後一個 .  及其右邊的字串:/dir1/dir2/dir3/my.file
${file%%.*}:拿掉第一個 .  及其右邊的字串:/dir1/dir2/dir3/my
記憶的方法為:

论坛徽章:
0
6 [报告]
发表于 2010-08-23 12:26 |只看该作者
学习了

论坛徽章:
0
7 [报告]
发表于 2010-08-23 12:43 |只看该作者
看看能否装个logswitch.

或者: 将下面这个脚本放到cronjob里,每三个小时运行一次。
rdcwayx 发表于 2010-08-23 11:43



        这个针对有的log,不一定行,比如netscape的log好像就不行

有些打开文件后,好像句柄一直不释放,你把文件改名(我一直怀疑这样的,文件怎么还能改名,可是就是能改),再建一个同名文件,它是不会往里面写的。

论坛徽章:
0
8 [报告]
发表于 2010-08-23 13:28 |只看该作者
回复 5# love_net


    也是一位潜王啊!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP