Vraag & Antwoord

OS Linux

Output van bashscript indelen

6 antwoorden
  • Ik heb een script gemaakt die middels snmp de software uitleest op pc's. Nu wil ik de output dusdanig hebben dat het in Excel in te lezen valt, nu is het gewoon 1 lange opsomming van de gegevens, hoe of waarmee kan je zoiets doen. Ik werk met FC3, de output ziet er zo uit: [code:1:c0a84f0094] RFC1213-MIB::sysName.0 = STRING: "computer1" HOST-RESOURCES-MIB::hrSWInstalledName.1 = STRING: "IBM AS/400 Client Access Express voor Windows" HOST-RESOURCES-MIB::hrSWInstalledName.2 = STRING: "IBM AS/400 Client Access Express voor Windows SI06804" HOST-RESOURCES-MIB::hrSWInstalledName.3 = STRING: "IrfanView (remove only)" HOST-RESOURCES-MIB::hrSWInstalledName.4 = STRING: "Windows 2000 Hotfix - KB834707" HOST-RESOURCES-MIB::hrSWInstalledName.5 = STRING: "Hotfix voor DirectX 8 - KB839643" HOST-RESOURCES-MIB::hrSWInstalledName.6 = STRING: "Windows 2000-hotfix - KB842773" HOST-RESOURCES-MIB::hrSWInstalledName.7 = STRING: "Windows 2000 Hotfix - KB867282" HOST-RESOURCES-MIB::hrSWInstalledName.8 = STRING: "Windows 2000 Hotfix - KB883939" HOST-RESOURCES-MIB::hrSWInstalledName.9 = STRING: "Windows 2000 Hotfix - KB889293" HOST-RESOURCES-MIB::hrSWInstalledName.10 = STRING: "Windows 2000-hotfix - KB890046" etc etc etc RFC1213-MIB::sysName.0 = STRING: "computernaam2" HOST-RESOURCES-MIB::hrSWInstalledName.1 = STRING: "IBM iSeries Access for Windows" HOST-RESOURCES-MIB::hrSWInstalledName.2 = STRING: "Windows 2000 Hotfix - KB834707" HOST-RESOURCES-MIB::hrSWInstalledName.3 = STRING: "Hotfix voor DirectX 9 - KB839643" HOST-RESOURCES-MIB::hrSWInstalledName.4 = STRING: "Windows 2000-hotfix - KB842773" HOST-RESOURCES-MIB::hrSWInstalledName.5 = STRING: "Windows 2000 Hotfix - KB867282" HOST-RESOURCES-MIB::hrSWInstalledName.6 = STRING: "Windows 2000 Hotfix - KB883939" HOST-RESOURCES-MIB::hrSWInstalledName.7 = STRING: "Windows 2000 Hotfix - KB889293" HOST-RESOURCES-MIB::hrSWInstalledName.8 = STRING: "Windows 2000-hotfix - KB890046" HOST-RESOURCES-MIB::hrSWInstalledName.9 = STRING: "Windows 2000 Hotfix - KB890923" etc etc etc [/code:1:c0a84f0094] Ik wil dus eigenlijk een overzicht hebben waarbij je 1 lange lijst krijgt van alle software op alle pc's (ong 150 stuks) en als je dan een softwarepakket selecteerd, dan moet je kunnen zien op welke pc's het staat. Eventueel kan ik iets met filters in Excel doen, maar dan moet ik het daar eerst knap inkrijgen.
  • Die file kun je zo in Excel inlezen. Alleen moet je wat truuken (macro's evt) in Excel. Misschien is een search&replace van tevoren ook wel handig...
  • [quote:72b252922f="MrLeeJohn"]Die file kun je zo in Excel inlezen. Alleen moet je wat truuken (macro's evt) in Excel. Misschien is een search&replace van tevoren ook wel handig...[/quote:72b252922f] Tuurlijk, overbodige info is wel weg te filteren, maar het leek me makkelijker als ik in het script mee kan nemen dat de file "voorbereid" wordt en kant en klaar ingelezen kan worden. Is er misschien een mogelijkheid per pc 1 bestand aan te (laten) maken? Vanuit het script zelf wil het mij niet lukken door de variable.
  • Tja... dan doe je de search&replace toch in je script. Kan op veel manieren. Op het eind unix2dos loslaten op je file is wellicht ook handig... als je dan zorgt dat het een cvs-file is op het eind ben je klaar. Lekker pielen :wink:
  • [quote:56e2e365c7="MrLeeJohn"]Tja... dan doe je de search&replace toch in je script. Kan op veel manieren. Op het eind unix2dos loslaten op je file is wellicht ook handig... als je dan zorgt dat het een cvs-file is op het eind ben je klaar. Lekker pielen :wink:[/quote:56e2e365c7] Ja precies, dat vind ik juist het leuke, ben al trots dat ik met mijn gebrekkige kennis het scriptje aan de praat heb gekregen. Ik zal met search&replace aande gang gaan en zal dat unix2dos eens bestuderen. Als het he;e gebeuren af is, zal ik het script plaatsen, zal ongetwijfeld voor verbetering vatbaar zijn :wink:
  • kun je de :: niet als seperator instellen voordat je de CSV inleest in MS Excel? standaard is bij CSV (comma seperated values) je raad het al de komma de seperator. Bij amerikaanse notatie is dat een punt. unix2dos moet je zeker doen.

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.