|
|
|
|
Google Site
|
|||||||
| Fórumok | Regisztráció | Blog | Man oldalak | Fórum Szabályok | Linkek | Albumok | GYIK | Felhasználók | Naptár | Keres | Mai hozzászólások | Megjelöl Fórumok Olvas |
| Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt. |
![]() |
|
|
Téma eszközök | Keresés a téma | Rate Thread | Megjelenítési módok |
|
|||
|
Kérjük, javasoljuk néhány változtatást az én-kód
Hi All,
Tettem a következő kódokkal kell szedni 10-15 perc, hogy végre teljesen. Itt a fájl használok igen nagy (kb. 1050993843). Tud akármi egy egyes módosításokat végez a kódomat, amely csökkenti az időt vesz igénybe, mint végrehajtani vagyok nagyon új a Unix (tanuló). Még egy dolog, meg kell futtatni a szkriptet 4-ben én App kiszolgálók. Van mód arra, hogy ez a szkript automatikusan a belépés az összes szerver és vigyen el a végső kimenet .. Nekem van próbált nyilvános kulccsal generáció, és ez nem működik megfelelően ... ez kapcsolódik a második szerver és nem jön vissza a forgatókönyvet ..... Kérlek, segíts, hogy nagyon sürgős .. #! / bin / ksh fname \u003d sample.log server \u003d $ (hostname) cp / dev / null / axphome / mvelmu / scriptcount.txt check () ( count \u003d `cat $ 1 | grep-c" $ 2 "" if [$ count-eq 0] majd echo "Nincs $ 3 a log file">> / axphome / mvelmu / scriptcount.txt vagy echo "$ 3 \u003d $ count">> / axphome / mvelmu / scriptcount.txt fi ) check2 () ( count \u003d `cat $ 1 | grep-i" $ 2 "| grep-i-c" $ 3 "": if [$ count-eq 0] majd echo "Nincs $ 4 a log file">> / axphome / mvelmu / scriptcount.txt vagy echo "$ 4 \u003d $ count">> / axphome / mvelmu / scriptcount.txt fi ) echo "$ server">> / axphome / mvelmu / scriptcount.txt echo "*******">> / axphome / mvelmu / scriptcount.txt check "$ fname" "SuspendCardWebA2AServiceCall.suspendCard Entry" "Suspend kártya" check "$ fname" "MaintainAccountStatusFacade.suspend kártya com.americanexpress.gcbs.exception.DataException" "Suspend kártya Data kivétel" check "$ fname" "MaintainAccountStatusFacade.suspend kártya com.americanexpress.gcbs.exception.BusinessSystemException" "Suspend kártya BusinessSystemExceptions" check "$ fname" "ApplyForACardHelper.insertStatus Entry" "Apply card" check "$ fname" "ApplyForACardFacade.getBcaProfile com.americanexpress.gcbs.exception.BusinessSystemException" "Apply card BusinessSystemException" check "$ fname" "ApplyForACardFacade.getBcaProfile com.americanexpress.gcbs.exception.UnexpectedException" "Apply kártya Váratlan Kivételek" check "$ fname" "ApplyForACardBusinessLogic.getBcaProfileProvider kivétel történt, míg végrehajtja a parancsot" "Apply card BCA profil hiba" check "$ fname" "MaintainAccountStatusFacade.cancel kártya Entry" "Mégsem kártya" check "$ fname" "MaintainAccountStatusFacade.cancel kártya com.americanexpress.gcbs.exception.BusinessSystemException" "Mégsem kártya BusinessSystemException" check "$ fname" "MaintainAccountStatusFacade.cancel kártya com.americanexpress.gcbs.exception.UnexpectedException" "Mégsem kártya UnExpectedException" check2 "$ fname" "ChangeLimitsServiceBean.process" "entry" "Change határértékeket" check2 "$ fname" "ChangeLimitsBusinessLogic" "DBUnexpectedException" "Change korlátozza DBUnexpected kivétel" check2 "$ fname" "ChangeLimitsBusinessLogic" "UnexpectedException" "Change korlátozza Unexpected Exception" check "$ fname" "ChangeCMDetailsServiceBean.validateRequest Entry" "Change CMDetails" check2 "$ fname" "ChangeCMDetailsBusinessLogic" "DBCommunicationException" "Change CMDetails DB kivétel" check2 "$ fname" "ChangeCMDetailsBusinessLogic" "MYCACommunicationException" "Change CMDetails MYCA kivétel" check2 "$ fname" "ChangeCMDetailsBusinessLogic" "MultipleExceptions" "Change CMDetails több kivétel" # cat / axphome / mvelmu / scriptcount.txt cat / axphome / mvelmu / scriptcount.txt | mail-s "Script számítanak $ server" Madhav.K.Sunduru @ aexp.com, Arun.V.Shankar @ aexp.com, Ramasubramanian.Z.Murugesan @ aexp.com, Bini.R.Mathew @ aexp.com, Rafikul.H.Sekh @ aexp.com, Uma.M.Subburayan @ aexp.com, Kavitha.V.Madanagopal @ aexp.com Thanks in advance ... |
| Sponsored Links |
|
|
|
|||
|
A Useless használata macska nem különösebben lelassítja a forgatókönyv sokkal, a fő probléma az, hogy ön grepping a fájlt újra és újra az egyes keresési karakterlánc. Talán ön tudna változtatni, hogy a grep minden a húrok egy időben, akkor változtatni a kimenetet a kívánt formátumot. Egy egyszerű sed script kellene erre a feladatra. Kód:
sed -n -f - sample.log <<HERE | sort | uniq -c s/.*SuspendCardWebA2AServiceCall.suspendCard Entry.*/Suspend card/p s/.*MaintainAccountStatusFacade.suspend card com.americanexpress.gcbs.exception.DataException.*/Suspend card Data Exception/p s/.*MaintainAccountStatusFacade.suspend card com.americanexpress.gcbs.exception.BusinessSystemException.*/Suspend card BusinessSystemExceptions/p # etc # and then the check2 cases /ChangeLimitsServiceBean.process/s/.*entry.*/Change limits/p /ChangeLimitsBusinessLogic/s.*DBUnexpectedException.*/Change limits DBUnexpected Exception/p # etc HERE Ez csak egy próba-ból fogalom, és nem kezeli az ügy érzékeny kereső van az eredeti forgatókönyvet. Más mint amit, akkor talál megfelelő sorokat, és a változás azokat a megfelelő címkét, majd számolni az előfordulások számát ilyen címkék az eredményben. Mindegy, a lényeg az, hogy gyorsítsa fel, hátha tud futtatni csak egy átkeltek a log fájlt, és a végén egy sokkal kisebb mennyiségű adat, amely meg tudná tovább a folyamat a jelentés csak akarsz. Ez nem nyomtat semmit a területeken, amelyek nem találhatók, ha azt szeretné, explicit nulla számít, hozzátéve, hogy a feldolgozás utáni szakaszt kell figyelembe venni egy meglehetősen triviális feladat. Talán jól tenné, ha külön a húr és a címke adatait a forgatókönyvet is. Ez is elhagyta, mint gyakorlat. Last edited by korszak 08-07-2008 at 04:51 AM.. Reason: Hoppá, frissült is kezelni a check2 esetben (remélem) |
|
|||
|
Itt egy kicsit bonyolultabb awk szkriptet, amely működik az elv ugyanaz, mint a sed Én korábban közzétett, de magában foglalja a nulla számít, és elkerülhető, hogy rendezze a kimenetet. Azt is valamelyest elválasztja az adatokat a logika. Még mindig hiányzik, az az eszköz, hogy néhány, a megfelelő eset-érzékenyek. Kód:
#!/bin/sh
awk 'NR==FNR {
f = split ($0, a, ":");
if (f>2) {
c[a[3]] = a[2];
r[a[3]] = a[1];
i[NR] = a[3];
}
else {
c[a[2]] = ".";
r[a[2]] = a[1];
i[NR] = a[2];
}
next
}
{
for (l in r) {
if ($0 ~ r[l] && $0 ~ c[l])
++n[l]
}
}
END {
for (j = 1; j in i; ++j) {
if (n[i[j]])
printf "%s = %i\n", i[j], n[i[j]];
else
printf "There is no %s in the log file\n", i[j];
}
}' - $1 <<"HERE"
SuspendCardWebA2AServiceCall.suspendCard Entry:Suspend card
MaintainAccountStatusFacade.suspend card com.americanexpress.gcbs.exception.DataException:Suspend card Data Exception
MaintainAccountStatusFacade.suspend card com.americanexpress.gcbs.exception.BusinessSystemException:Suspend card BusinessSystemExceptions
... etc ...:... etc ...
ChangeLimitsServiceBean.process:entry:Change limits
ChangeLimitsBusinessLogic:DBUnexpectedException:Change limits DBUnexpected Exception
... etc ...:... etc ...:... etc ...
HERE |
| Sponsored Links |
|
|
![]() |
| Könyvjelzõk |
| Téma eszközök | Keresés a téma |
| Megjelenítési módok | Rate this thread |
|
|
Több, UNIX és Linux fórum témák Ön által talált Hasznos
|
||||
| Szál | Thread Starter | Fórum | Válaszok | Utolsó hozzászólás |
| javasoljuk könyv | haripatn | A UNIX a fejlett és szakértői Felhasználók | 6 | 05-02-2008 06:14 PM |
| Tud javasoljuk a hatékonyabb módon ez? | mikie | Shell programozás és Scripting | 1 | 11-20-2006 10:49 AM |
| Két SQL kapcsolatok .. javasoljuk változásokat. | bhagat.singh-j | Shell programozás és Scripting | 0 | 10-25-2006 03:21 AM |
| Nézz be, és azt sugallják, ha minden szükséges változtatások | me_haroon | AIX | 1 | 07-03-2006 06:39 AM |