2016-01-05 7 views
2

Учитывая Баш скрипт работает ping -c 25 google.com | tee /home/user/myLogFile.logКак ограничить максимальную строку в файле журнала

и выходной файл /home/user/myLogFile.log, содержащий:

PING google.com (117.102.117.238) 56(84) bytes of data. 
64 bytes from 117.102.117.238: icmp_seq=1 ttl=61 time=12.7 ms 
64 bytes from 117.102.117.238: icmp_seq=2 ttl=61 time=61.1 ms 
(...) 
64 bytes from 117.102.117.238: icmp_seq=25 ttl=61 time=7.11 ms 

--- google.com ping statistics --- 
25 packets transmitted, 25 received, 0% packet loss, time 24038ms 
rtt min/avg/max/mdev = 5.573/11.293/61.102/11.210 ms 

Как ограничить максимальные строки в файле журнала, и если это максимальная , файл сбрасывается и сохраняется следующий выходной файл.

+0

спасибо S.Spieker, я уже использую эту ссылку раньше. Но, он не работает, как я хотел. сценарий как 'my_program | dd bs = 1 count = 100> log' просто сделать файл до 100 байт и не возобновить 'my_program' приветствует –

+0

На самом деле есть 'my_program | tee> (split -d -b 100000 -) 'как принятый ответ в предложенном выше дубликате –

ответ

1

Хорошо, я думаю, что вы можете сделать что-то вроде:

ping -c 25 google.com | tee >(split -d -b 100000 - /home/user/myLogFile.log) 
+0

Я просто пробовал этот скрипт, но, похоже, возникла ошибка -> > tutak @ 127: ~ $ ping -c 25 google.com | Судо тройник> (сплит -d -b 100000 myLogFile.log) > тройник:/DEV/FD/63: Нет такого файла или каталога У меня есть создать файл Мануалы, но все же ошибка касается –

+0

я забыл «- '- повторите попытку –

+0

@MuhammadJendroYuwono, вы не можете добавить «sudo» здесь, в команде. –