iny vystup da more a iny vim

Sekcia: Aplikácie & Desktop 03.05.2012 | 18:57
Avatar matej148 Fedora  Používateľ
Zdravim vsetkych,
neviete mi nahodou poradit, ze ako odstranit formatovacie znaky (kebyze viem aspon ako sa volaju) zo suboru? Mam vystup z programu apachetop, ktory sa pekne zobrazuje (prikaz more alebo cat):
last hit: 00:00:00 atop runtime: 0 days, 00:00:00 14:04:43
All: 0 reqs ( 0.0/sec) 0.0B ( 0.0B/sec) 0.0B/req
2xx: 0 ( 0.0%) 3xx: 0 ( 0.0%) 4xx: 0 ( 0.0%) 5xx: 0 ( 0.0%)
R ( 1s): 0 reqs ( 0.0/sec) 0.0B ( 0.0B/sec) 0.0B/req
2xx: 0 ( 0.0%) 3xx: 0 ( 0.0%) 4xx: 0 ( 0.0%) 5xx: 0 ( 0.0%)

ale ked ho spracuvavam alebo postvem nan vim-ko (alebo dam cat -f), tak sa mi zobrazi takyto:
^[[?1049h^[[1;24r^[(B^[[m^[[4l^[[?7h^[[?1h^[=^[[H^[[2Jlast hit: 00:00:00^[[1;28Hatop runtime: 0 days, 00:00:00^[[1;72H14:04:43^M^[[2d^[(B^[[0;1mAll: 0 reqs ( 0.0/sec) 0.0B ( 0.0B/sec) 0.0B/req^M^[[3d^[(B^[[m2xx: 0 ( 0.0%) 3xx: 0 ( 0.0%) 4xx: 0 ( 0.0%) 5xx: 0 ( 0.0%)^M^[[4d^[(B^[[0;1mR ( 1s): 0 reqs ( 0.0/sec) 0.0B ( 0.0B/sec) 0.0B/req^M^[[5d^[(B^[[m2xx: 0 ( 0.0%) 3xx: 0 ( 0.0%) 4xx: 0 ( 0.0%) 5xx: 0 ( 0.0%)^M^[[7d

Predpokladam ze ide o nejako kodovane formatovanie suboru (bold, tabulatory,...) a zaujimalo by ma ako docielit to, aby som mohol ten subor spracovavat ako ten horny priklad, resp. aspon kebyze ma mozete naviest ze o co ide, tak by som si tie znaky nejako nahradil. Vopred vdaka.
    • Re: iny vystup da more a iny vim 03.05.2012 | 19:54
      WlaSaTy   Návštevník
      Áno, sú to formátovacie escape sekvencie. Skús program strings.

      Inak, ak to chceš na monitoring, nestačilo by nejaké hotové riešenie ako napríklad cacti alebo nagios?
      • Re: iny vystup da more a iny vim 03.05.2012 | 20:08
        Avatar matej148 Fedora  Používateľ
        Vdaka, strings je super, az na to, ze mi tie znaky neodstrani a vystup vyzera takto:
        [?1049h
        [1;24r
        [?7h
        [?1h
        [2Jlast hit: 00:00:00
        [1;28Hatop runtime: 0 days, 00:00:00
        [1;72H16:05:21
        [0;1mAll: 0 reqs ( 0.0/sec) 0.0B ( 0.0B/sec) 0.0B/req
        [m2xx: 0 ( 0.0%) 3xx: 0 ( 0.0%) 4xx: 0 ( 0.0%) 5xx: 0 ( 0.0%)
        [0;1mR ( 1s): 0 reqs ( 0.0/sec) 0.0B ( 0.0B/sec) 0.0B/req
        [m2xx: 0 ( 0.0%) 3xx: 0 ( 0.0%) 4xx: 0 ( 0.0%) 5xx: 0 ( 0.0%)

        Daju sa nejako odstranit aj tie znaky na zaciatku riadkov? cacti nepouzivam lebo aplikacia musi bezat na viacerych kompoch a tak neviem zabezpecit ze tam cacti bude.
        Vdaka
        • Re: iny vystup da more a iny vim 03.05.2012 | 20:58
          WlaSaTy   Návštevník
          Jáj, áno. strings má trošku inú funkcionalitu. Google, menovite, a podobne.

          Ohľadne monitoringu vyťaženia cez cacti, nagios alebo iný nástroj. Tak tiež nemáš záruku že tam bude php, apache, htop, apachetop a že tam bude v prípade amd64 aj spetná kompatibilita na x86. A podobne.
          • Re: iny vystup da more a iny vim 03.05.2012 | 21:21
            Avatar matej148 Fedora  Používateľ
            Diky, pohram sa s tym teda.
            A ano, kedze je to app pre Apache servery, tak mam tu istotu ze tam php, apache,... bude, plus tato cast aplikacie bude fungovat ked bude mat uzivatel nainstalovany aj apachetop.
          • Re: iny vystup da more a iny vim 03.05.2012 | 22:12
            Avatar matej148 Fedora  Používateľ
            Nech skusam co skusam, tak stale to nevyhadzuje to co chcem...
            Skusal som aj sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" file > file2
            Alebo podla toho tvojho:
            cat file -v > lama
            sed 's/^[[^a-zA-Z]\+[a-zA-Z]//g' lama
            a vyhodilo to nasledovne:
            ^[[?1049h^[[1;24r^[(B^[[m^[[4l^[[?7h^[[?1h^[=^[[H^[[2Jlast hit: 00:00:00^[[1;28Hatop runtime: 0 days, 00:00:00^[[1;72H18:00:55^M^[[2d^[(B^[[0;1mAll: 0 reqs ( 0.0/sec) 0.0B ( 0.0B/sec) 0.0B/req^M^[[3d^[(B^[[m2xx: 0 ( 0.0%) 3xx: 0 ( 0.0%) 4xx: 0 ( 0.0%) 5xx: 0 ( 0.0%)^M^[[4d^[(B^[[0;1mR ( 1s): 0 reqs ( 0.0/sec) 0.0B ( 0.0B/sec) 0.0B/req^M^[[5d^[(B^[[m2xx: 0 ( 0.0%) 3xx: 0 ( 0.0%) 4xx: 0 ( 0.0%) 5xx: 0 ( 0.0%)^M^[[7d[

            Skoda ze strings na to tiez nie su dokonale, ale vysledok som ziskal jeden z najlepsich. Nenapada ta v com robim chybu alebo ako by to bolo lepsie riesit? Vopred diky za odpoved.
            • Re: iny vystup da more a iny vim 04.05.2012 | 00:03
              WlaSaTy   Návštevník
              Môj? Nerozumiem. Ja bývam na starom kontinente. Ten priamy link bol na ľudí, čo riešili niečo podobné.

              Blbé je, že tvoja otázka nedáva zmysel. Snažím sa pochopiť, prečo chceš stále objavovať koleso. Chceš to predávať ako blackbox bez zdrojákov?

              Ohľadne zámeny tých riadiacích sekvencií na adresáciu kurzora pre všetky typy terminálov, alebo si spravíš emulátor terminálu ktorý stiahne obsah obrazovky do súboru tak ako je to obrazené. Alebo preprogramuješ apachetop aby to vypisoval natvrdo cez printf.
              PS