![]() |
Hallo en welkom van de Verenigde Staten aan de UNIX en Linux Forum! Bedankt voor uw bezoek en Deelnemen aan onze wereldwijde gemeenschap.
|
|
google unix.com
|
|||||||
| Forums | Registreer | Forum Regels | Links | Albums | Veelgestelde vragen | Ledenlijst | Kalender | Zoeken | Today's Posts | Markeer forums als gelezen |
| Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier. |
Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
|
||||
| Draad | Thread Starter | Forum | Antwoorden | Last Post |
| rsh script met binnenin een lus | trekianov | Programmeren en Shell Scripting | 5 | 12-06-2008 12:39 |
| while lus problemen | amatuer_lee_3 | Programmeren en Shell Scripting | 7 | 05-13-2008 12:48 AM |
| Script niet uitvoeren tweede lus | Thumper | Programmeren en Shell Scripting | 2 | 05-07-2008 04:10 PM |
| While lus problemen | rcunn87 | Programmeren en Shell Scripting | 0 | 06-20-2006 04:26 PM |
| niet helemaal zeker hoe lus dit script! | moxxx68 | Programmeren en Shell Scripting | 3 | 09-09-2004 07:00 |
![]() |
|
|
LinkBack | Thread Tools | Zoeken in deze Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Problemen met een als / dan lus binnen een script
Hi there,
Ik heb een script geschreven om de logboekbestanden van de var / tmp richt. Het werkt tot een punt. Wat ik moest doen was om het script als er geen bestanden te worden verwijderd. Ik kan dit werk aan een test script, maar toen ik de uitvoering van het in mijn programma dat fouten uit met een "dan" niet geëvenaard fout. Ik heb getraceerd aan de regel in het script: if [TEMP \u003d "0"]; vervolgens Kan iemand eens te bekijken en teel me waar ik heb er mis ging of het punt me in de goede richting Rgds Colin Hier is het uittreksel uit het script dat ik gemaakt: #! / bin / sh # # Stel lokale variabelen User \u003d "/ usr / bin / whoami` ACCOUNT \u003d specs HOSTNAME \u003d `/ usr / bin / hostname" DATUM \u003d `/ usr / bin / date" +% Y% m% d "" TEMP \u003d `find / var / tmp /-naam" gem * "-atime +3 | wc-l` TEMPALL \u003d `find / var / tmp /-atime +3 | wc-l` # Purge oud Logboekbestanden find / gebruikers / agaff / nospace / logs /-name "*. txt"-atime +1 | xargs rm-f # Main Screen helder echo "<1> Verwijderen GEM logboekbestanden op host:" $ HOSTNAME echo "<2> Verwijder alle bestanden in de / var / tmp (alleen onderhoud)" echo "<3> Afsluiten - geen bestanden te worden verwijderd" echo "" echo "Voer 1 of 2 of 3" lees ANTWOORD if [$ answer \u003d "1"]; vervolgens helder echo "Examining Logboekbestanden voor host:" $ HOSTNAME echo "" if [$ temp \u003d "0"]; vervolgens # (dit is waar zij bommen uit) echo echo echo "************************************************ *** " echo "Er zijn geen logboekbestanden worden geschrapt uit host:" $ HOSTNAME echo elif [$ TEMP> "0"]; dan echo "***********************************************" echo "Er zijn" $ TEMP "log bestanden die kunnen worden geschrapt van host:" $ HOSTNAME echo "" echo "" echo "<1> Verwijderen GEM logboekbestanden op Host" $ hostname "in / var / tmp directory" echo "<2> Afsluiten - geen bestanden te worden verwijderd" echo "" echo "Voer 1 of 2" echo "" lees ANS1 if [$ ANS1 \u003d "1"]; vervolgens helder echo "" echo "" echo "Deleting GEM LogFiles Log Files" mkdir-p / gebruikers / agaff / nospace / logs / find / var / tmp /-naam "gem *"-atime +3> / gebruikers / agaff / nospace / logs / $ date "-" $ HOSTNAME "-logs". txt | xargs-f> / dev / null 2> & 1 echo "" echo "************************************************ ************************" echo "Tmp Logs zijn nu verwijderd en logbestand bijgewerkt" echo "" echo "" elif [$ ANS1 \u003d "2"], vandaar echo "afsluiten" anders echo "Ongeldige selectie, spannend ..." afrit fi |
|
||||
|
Gewoon om mijn 0.02c waard:
Maak gebruik van inspringen in het script schrijven! Het maakt het onderhoud van uw script gewoon sooo veel gemakkelijker. Zoeken naar een geneste elif commando in tussen alle u "echo" 't is niet niks: #! / bin / sh # # Stel lokale variabelen User \u003d "/ usr / bin / whoami` ACCOUNT \u003d Compaq HOSTNAME \u003d `/ usr / bin / hostname" DATUM \u003d `/ usr / bin / date" +% Y% m% d "" TEMP \u003d `find. -name "gem *" | wc-l ` TEMPALL \u003d `find. | Wc-l ` # Purge oud Logboekbestanden # find / gebruikers / agaff / nospace / logs /-name "*. txt"-atime +1 | xargs rm-f # Main Screen helder echo "<1> Verwijderen GEM logboekbestanden op host:" $ HOSTNAME echo "<2> Verwijder alle bestanden in de / var / tmp (alleen onderhoud)" echo "<3> Afsluiten - geen bestanden te worden verwijderd" echo "" echo "Voer 1 of 2 of 3" lees ANTWOORD if [$ ANTWOORD-eq "1"]; vervolgens helder echo "Examining Logboekbestanden voor host:" $ HOSTNAME echo "" if [$ TEMP-eq "0"]; vervolgens # (dit is waar zij bommen uit) echo echo echo "*******************************************" echo "Er zijn geen logboekbestanden worden geschrapt uit host:" $ HOSTNAME echo elif [$ TEMP-gt "0"]; dan echo "****************************************" echo "Er zijn" $ TEMP "log bestanden die kunnen worden geschrapt van host:" $ HOSTNAME echo "" echo "" echo "<1> Verwijderen GEM logboekbestanden op Host" $ hostname "in / var / tmp directory" echo "<2> Afsluiten - geen bestanden te worden verwijderd" echo "" echo "Voer 1 of 2" echo "" lees ANS1 if [$ ANS1-eq "1"]; vervolgens helder echo "" echo "" echo "Deleting GEM LogFiles Log Files" # mkdir-p / gebruikers / agaff / nospace / logs / # find / var / tmp /-naam "gem *"-atime +3> / gebruikers / agaff / nospace / logs / $ date "-" $ HOST NAAM "-logs". Txt | xargs-f> / dev / null 2> & 1 echo "" echo "*******************************************" echo "Tmp Logs zijn nu verwijderd en logbestand bijgewerkt" echo "" echo "" elif [$ ANS1-eq "2"], vandaar echo "afsluiten" anders echo "Ongeldige selectie, spannend ..." afrit fi fi fi Hier endeth onze leesbaarheid les voor vandaag ... |
![]() |
| Bladwijzers |
| Thread Tools | Zoeken in deze Thread |
| Display Modes | Beoordeel deze draad |
|
|