Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Как создать html-отчет о процессах, выполняемых системой?  (Прочитано 811 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Maksik59

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Умные люди помогите с решением
Сгенерировать html-отчет о процессах, выполняемых системой. Отчет должен иметь вид таблицы:
Processes: 77 total, 4 running, 2 stuck, 71 sleeping, 415 threads
Load Avg: 0.28, 0.21, 0.21  CPU usage: 1.31% user, 1.31% sys, 97.36% idle
SharedLibs: 5100K resident, 6228K data, 0B linkedit. MemRegions: 18472 total, 1259M resident, 32M private, 459M shared.
PhysMem: 828M wired, 2142M active, 600M inactive, 3570M used, 515M free.
VM: 154G vsize, 1041M framework vsize, 2118843(0) pageins, 31910(0) pageouts.
Networks: packets: 959253/815M in, 720612/182M out. Disks: 339129/11G read, 435830/10G written.
 
PID    COMMAND      %CPU TIME     #TH  #WQ  #POR #MREG RPRVT  RSHRD  RSIZE  VPRVT  VSIZE  PGRP  PPID  STATE    UID
32199  top          4.3  00:00.42 1/1  0    24   36    1424K  252K   2020K  17M    2378M  32199 32194 running  0
32194  bash         0.0  00:00.01 1    0    17   24    432K   244K   1096K  17M    2378M  32194 32193 sleeping 501
32193  login        0.0  00:00.64 1    0    22   56    560K   252K   1680K  19M    2379M  32193 32190 sleeping 0
32190  Terminal     3.5  00:01.02 5    1    111- 214   4388K+ 36M    14M+   73M    2777M  32190 110   sleeping 501
32117  ocspd        0.0  00:02.61 3    1    50   66    4612K  304K   5276K  79M    2447M  32117 1     sleeping 0
(вывод команды top вашей системы).
Для столбцов и ячеек использовать тэги <div>.

Оффлайн gva230

  • Активист
  • *
  • Сообщений: 981
  • GUI-овый линуксоид
    • Просмотр профиля
    • Моя дикая страничка
Для таблицы можно и нужно использовать специализированные теги. <div> для других вещей предназначен.
А проблема решается с помощью AWK, cut, grep и т.п..
Kubuntu - наше фсё! :Ь

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3473
  • nix - вот оно счастье...
    • Просмотр профиля
я когда делаю отчеты в html программно буть то С++, bash или еще чего, клепаю html файл того вида которого должен быть отчет на месте где должны быть данные которые заранее не известны вставляю переменные, после чего программно считываю файл заменяю переменные в файле на данные и сохраняю файл, на этом все. В вашем случае тоже самое формируете файл в месте где должна быть таблица ставите переменную, программно формируете таблицу на html со своими данными и делов то.....
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
я когда делаю отчеты в html программно буть то С++, bash или еще чего, клепаю html файл того вида которого должен быть отчет на месте где должны быть данные которые заранее не известны вставляю переменные, после чего программно считываю файл заменяю переменные в файле на данные и сохраняю файл, на этом все. В вашем случае тоже самое формируете файл в месте где должна быть таблица ставите переменную, программно формируете таблицу на html со своими данными и делов то.....
Я делаю аналогично.
Это называется генерацией html страниц на основе html шаблона.
« Последнее редактирование: 13 Декабря 2013, 08:18:38 от alexander.pronin »

Оффлайн Maksik59

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
я сделал, вот программа, но div ставится во все пробелы, помогите исправить эту проблему
#!/bin/bash
#~ top в html
 
func_main() {
    func_read_top
}
 
 
 
func_read_top() {
    local IFS=$'\n'
     local IFS=$'\b'
    echo -n "" > top.html        #~ создаем пустой файл top.txt
    array=( $(top -b -n 1) )       #~ записываем вызов top в массив array
    #~ echo ${#array[@]}
    #~ exit 0
    for line in ${array[@]}; do #~ читаем массив array построчно в line
        line=$(echo "$line" | sed -e "s/\ *\ /<\/div><div>/g")  #~ див столбцов
        echo $line >> top.html
    done
    cat top.html     #~ показать результат
}
 
 
 
func_main
exit 0
« Последнее редактирование: 13 Декабря 2013, 10:34:12 от Чистый »

Оффлайн gva230

  • Активист
  • *
  • Сообщений: 981
  • GUI-овый линуксоид
    • Просмотр профиля
    • Моя дикая страничка
sed -e "s/\ *\ /<\/td><td>/g"Эта команда заменяет любые пробелы на </div><div>.
Kubuntu - наше фсё! :Ь

Оффлайн Maksik59

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
а кто-то может помочь с решением?

 

Страница сгенерирована за 0.071 секунд. Запросов: 25.