i=`date -d "1 hour ago"| awk '{print $2}'`; j=`date -d "1 hour ago"| awk '{print $3}'`;k=`date -d "1 hour ago"| awk '{print $4}'`; awk -v i="$i" -v j="$j" -v k="$k" '$1 == i && $2 == j && $3 > k {print $0}' /var/log/maillog
В переменной i==> хранится месяц В переменной j==> хранится дата
В переменной k==> Сохраняет продолжительность времени в формате Часы :Минуты :Секунды
Мой сценарий будет проверять текущий месяц, дату и журнал, который существует между прошлым 1 часом и настоящим.
Дайте мне знать, если возникнет путаница
Использование файлового архиватора, такого как tar
, применит сжатие, и вы сможете воссоздать файлы при необходимости , но не прозрачно
tar czf bothfiles.tgz original_file_v1 original_file_v2
tar cf - original_file_v1 original_file_v2 | gzip > bothfiles.tgz
Чтобы восстановить первый файл,
tar xzf bothfiles.tgz original_file_v1
S3QL будет применять сжатие и дедупликацию поблочно. Всего для нескольких строк маловероятно, что вы дойдете до точки, где сработает дедупликация, но она может быть очень эффективной для большинства -похожих файлов. (Несмотря на свое название, для его работы не требуется хранилище S3 .)
S3QL может быть очень эффективным; Я использую его для хранения долгосрочных -резервных копий архивов.
Возможно, можно разделить каждый файл на уникальные и общие части?
nl < <(cat header1 common) # Number the lines from file1
cp <(cat header2 common) /tmp/f2 # Copy the composite file2