![]() |
|
|
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 det første skriptet skal varsle i tilfelle det ikke er noen respons fra andre | rajusa10 | Shell programmering og Skripting | 4 | 03-19-2008 01:35 |
| Varsle Command. | venkyA | UNIX for Dummies Spørsmål og svar | 2 | 08-21-2007 07:20 |
| Registreringstidspunkt siste kommandoen kjøres i et skript. | videsh77 | Shell programmering og Skripting | 2 | 04-12-2007 02:19 |
| Script til e-post meg når en kommando er gjort | rocker40 | UNIX for Dummies Spørsmål og svar | 2 | 01-15-2004 06:31 |
| Prosessen pager - med mobiltelefon eller e-post varsle | squash | UNIX for Advanced & ekspertbrukere | 9 | 10-23-2001 04:34 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
Bruke e-post-kommandoen til å varsle status script
Kanne noen behage hjelpe meg med dette skriptet, jeg prøver å lage sikkerhetskopi av systemet på AIX, for dette jeg ønsker å først montere filsystemet hvis det ikke er montert, og deretter opprette sikkerhetskopien og unmount filsystemet men jeg har problem mens hjelp av post-kommandoen til å varsle status filsystemet om det kan monteres eller ikke, betyr det ikke sende en e-post og ikke føyer ikke noe til loggfilene, også hvordan beregner jeg tiden manuset tar å fullføre, er det en kommando jeg kan bruke i skriptet?
#! / usr / bin / ksh set-x HOSTNAME \u003d $ (vertsnavn) fs \u003d $ (df | grep testfs | awk '(print $ 7)') if [-z "$ fs"]; da echo "Mounting filsystem ..." mount / testfs mail-s "Filesystem montert med suksess"-c "xxx @ email1 yyy @ email2" </ var / log / succes.err> / dev / null ellers mail-s "No such filesystem finnes på $ HOSTNAME"-c "xxx @ email1 yyy @ email2" </ var / log / miss.err> / dev / null exit fi # # Hvis ikke kan montere så løpe, hvis [$? -ne 0]; deretter mail-s "Kan ikke montere filsystemet for $ HOSTNAME"-c "xxx @ email1 yyy @ email2" </ var / log / fail.err> / dev / null exit fi Sist endret av mbak; 07-15-2008 kl 09:43.. Årsak: skrivefeil |
|
||||
|
Fungerer post kommandoen på egen hånd utenfor skriptet? Du kan inkludere dato kommando på begynnelsen og slutten av skriptet, ellers bruk tid scriptname å kjøre den. Forresten, ikke behov for awk og grepDette vil gjøre: Code:
fs=$(df | awk '/testfs/ { print $7}')
|
|
||||
|
Bruke e-post-kommandoen til å varsle status script
Takk for rask respons, post-kommandoen jobbet fra kommandolinjen etter fjerner det-c flagget men skriptet ser OK bcos det fremdeles ikke legge til loggfiler.
forandret post-kommandoen som nedenfor, mail-s "Filesystem montert med suksessen" "xxx @ email1 yyy @ email2" </ var / log / succes.err> / dev / null |
|
||||
|
Kanskje det bør være success. err?
Dessuten er en annen ting du må gjøre lagre verdien av $? etter mount kommandoen, fordi det vil skifte tilbake til 0 når eventuelle senere kommandoen er kjørt, for eksempel Post for eksempel. f.eks retcode \u003d $? og if [$ retcode-ne 0]; deretter. |
|
||||
|
Bruke e-post-kommandoen til å varsle status script
Bør jeg lagre verdien av $? etter hver kommando som montere, umount og bruke koden u foreslo før hver av epost-kommandoer? Kanne u plz. være mer beskrivende? Takk igjen.
Sist endret av mbak; 07-16-2008 kl 09:52.. |
|
||||
|
Jeg ville egentlig omorganisere koden, slik at testen følger umiddelbart etter kommandoen. Legg merke til hvordan du kan bare ta med en kommando i en dersom, hvis statement å teste sin suksess eller fiasko: Code:
#!/usr/bin/ksh
set -x
HOSTNAME=$(hostname)
fs=$(df| awk '/testfs/{print $7}')
if [ -z "$fs" ]; then
echo "Mounting filesystem..."
if mount /testfs; then
mail -s "Filesystem mounted with success" "xxx@email1 yyy@email2"</var/log/succes.err >/dev/null
else
mail -s "Cannot mount filesystem for $HOSTNAME" "xxx@email1 yyy@email2"</var/log/fail.err >/dev/null
exit 1
fi
else
mail -s "No such filesystem exists on $HOSTNAME" "xxx@email1 yyy@email2"</var/log/miss.err >/dev/null
exit 2
fi
Også det er en god vane å exit n med en feilkode når skriptet rapporterer en feil. |
|
||||
|
Bruke e-post-kommandoen til å varsle status script
Jeg har fortsatt problemer med post-kommandoen i et manus, jeg vil bare sende en e-post med emnet bare.
På kommandolinjen for f.eks. : # Cat / etc / hosts | mail-s "Successfully creatd mksysb for $ HOSTNAME" xxx @ email1 yyy @ email2 "->works # Post-s "Successfully creatd mksysb for $ HOSTNAME" xxx @ email1 yyy @ email2 "->fungerer ikke |
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|