![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her. |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| Hvordan kontrollere hvilken programvare som er installert på UNIX | sunil.1908 | UNIX for Advanced & ekspertbrukere | 6 | 07-30-2008 01:31 |
| liste installert programvare | Ravi Raj Kumar | UNIX for Advanced & ekspertbrukere | 2 | 07-10-2007 08:55 |
| Listing all programvare og verktøy installert | hasnain | UNIX for Advanced & ekspertbrukere | 7 | 07-03-2007 11:53 |
| Installert programvare | tt1ect | UNIX for Dummies Spørsmål og svar | 1 | 04-03-2007 05:27 |
| Installert programvare | wakeley | UNIX for Dummies Spørsmål og svar | 3 | 02-08-2005 06:59 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
Sammenlikning av installert programvare.
Jeg har noen 30 AIX-servere og jeg ønsker sine programvarepakker til å være konsekvente. AIX gir en kommando for å liste ut alle relevant informasjon om en programvarepakke i kolon egen liste - Jeg grip dette via ssh og samle i en temp katalog server_name.log.
Nå er jeg stuck. Jeg kan lage en liste over alle unike pakker men hvordan kan jeg bla gjennom hver server for å se om programvaren er installert? Eksemplet nedenfor kan hjelpe forklare mitt dilema. Fil 1 awk: 1.1 sed: 3.2 ssh: 4.1.2 FIL 2 noe: 1.0.1 awk: 1.1 sed: 3.2 FIL 3 noe: 1.0.1 awk: 1.1 bgp: 1.0 sed: 3.2 |
|
||||
|
Har du en liste over hvilken programvare må installeres?
Du bør kanskje bruke Perl eller awk å lese versjoner inn i en matrise (Perh hash) og til slutt skrive ut manglende pakker (array nøkler) og galt versjoner (tast verdier). |
|
||||
|
Stygg, men det fungerer.
# Jeg brukte ssh SERVER1 lslpp-Lc> / tmp/lslpp_files/server1.log å opprette
# Loggfilene. Jeg så gjorde en katt av alle loggfilene sortere ut den unike # Cat / tmp / lslpp_files / * log | cut-d ":"-f1 | sort-u #! / usr / bin /perl @ host \u003d (SERVER1, server2, server3); for $ verten (@ host) ( åpen (MYINPUTFILE, "</ tmp / lslpp_files / $ host.log"); min (@ linjer) \u003d <MYINPUTFILE>; foreach $ line (@ linjer) ( chomp; neste hvis /^#/; ($ PackageName, $ Fileset, $ Level, $ stat, $ PTFId, $ FixState, $ type, $ Beskriving, $ DestinationDir, $ Uninstaller, $ MessageCatalog, $ MessageSet, $ MessageNumber, $ Parent, $ Automatisk, $ EFIXLocked, $ InstallPath, $ BuildDate) \u003d split (/: /, $ line); # print "$ host - $ Fileset - $ Level \ n"; $ HoH ($ vert) ($ Fileset) \u003d $ nivå; ) close (MYINPUTFILE); ) # # Sammenligne fil # åpen (COMPFILE, "</ tmp / lslpp_files.final"); min (@ complines) \u003d <COMPFILE>; # # Print Header # print "fileset: SERVER1: server2: server3 \ n"; foreach $ compline (@ complines) ( ($ Filset, $ LVL) \u003d split (/: /, $ compline); print "$ Filset"; for $ verten (@ host) ( print ": $ HoH ($ vert) ($ Filset)"; ) print "\ n"; ) close (COMPFILE); |
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|