Неустранимая ошибка в Shell Shell: не репозиторий Git

Ну, у меня такая же проблема, ящик Fedora. И никакого решения тоже нет. Я использую «обходной путь», основанный на сценарии, который я нашел по адресу http://stevehavelka.com/rebuilding-broken-webalizer-history-tcl/, с помощью которого вы воссоздаете файл истории. Это грязно, копировать-вставить-стиль, но он работает. По крайней мере, в течение одного месяца (т. Е. До тех пор, пока webalizer не воссоздает индексную страницу и не перезапишет файл истории):

#!/bin/sh
#Using this script is straightforward:
#
# 1. Run it within the folder that has your old webalizer files, and it produces as much historical data as it can.
# 2. Copy/paste that historical data into your webalizer.hist file, and rerun Webalizer.
# 3. That’s it!  You should have all your stats back.
#
# the next line restarts using tclsh \
exec tclsh "$0" "$@"

# first, find the right files
foreach file [lsort -decreasing [glob usage_*.html]] {

    # and get the date from the files
    regexp {usage_(\d{4})(\d\d).html} $file -> year month

    # open the file to get some data from it
    set fh [open $file r]
    set text [list]
    while { ![eof $fh] } {
        lappend text [gets $fh]
    }
    close $fh

    # now start pulling out data with Total Hits
    set idx [lsearch -glob $text {*Total Hits*}]
    regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalHits

    # Total Files
    set idx [lsearch -glob $text {*Total Files*}]
    regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalFiles

    # Total Unique Sites
    set idx [lsearch -glob $text {*Total Unique Sites*}]
    regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalUniques

    # Total kB Files
    set idx [lsearch -glob $text {*Total kB Files*}]
    if { $idx == -1 } {
        set idx [lsearch -glob $text {*Total KBytes*}]
    }
    regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalKb

    # Process days
    set first [lsearch -glob $text {*Daily Statistics for*}]
    set last [lsearch -glob $text {*Hourly Statistics for*}]
    set subtext [lrange $text $first $last]
    set dates [lsearch -glob -all -inline $subtext {<TR*><TD ALIGN=center><FONT SIZE="-1"><B>*</B></FONT></TD>}]

    # First day processed
    regexp {<B>(\d+)</B>} [lindex $dates 0] -> firstDay

    # Last day processed
    regexp {<B>(\d+)</B>} [lindex $dates end] -> lastDay

    # Total Pages
    set idx [lsearch -glob $text {*Total Pages*}]
    regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalPages

    # Total Visits
    set idx [lsearch -glob $text {*Total Visits*}]
    regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalVisits

    # and that's it!
    puts "[string trimleft $month 0] $year $totalHits $totalFiles $totalUniques $totalKb $firstDay $lastDay $totalPages $totalVisits"

}

Как указано, поместите этот скрипт в каталог, содержащий сводки статистики, выполните его и скопируйте -paste результат в ваш файл webalizer.hist. Там вы идете.

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

0
задан 16 April 2018 в 12:31

0 ответов

Другие вопросы по тегам:

Похожие вопросы: