The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



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
Conditionally begynte linjene i VI ifermon UNIX for Dummies Spørsmål og svar 0 06-04-2008 10:43
søke etter innholdet i mange fil og skrive ut filen bruker shell script cdfd123 Shell programmering og Skripting 3 10-07-2007 11:17
sed csv fjerne betinget Jae Shell programmering og Skripting 6 08-03-2007 04:29
E-post fra script conditionally dfb500 Shell programmering og Skripting 2 05-01-2007 02:01
Opprette fil innholdet ved hjelp av innholdet i en annen fil Rev Shell programmering og Skripting 21 02-24-2006 10:25

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 10-13-2005
rajus19 rajus19 is offline
Registrert bruker
  
 

Bli Date: Feb 2005
Beliggenhet: Bangalore
Innlegg: 36
Hvordan oppdatere innholdet i en fil betinget?

Hei Alle,

Jeg har filen en data som har to kolonner Beliggenhet og greven.

Filen ser slik ut
India 1
Kr 0
UK 2
Kina 0

Hva jeg trenger å gjøre er når jeg ikke klarer å logge på Oracle så må jeg legge 1 til greven for denne plasseringen.

Når mitt script ikke logikk til Oracle for et bestemt sted, må skriptet for å finne posten for at plassering og deretter endre teller. Jeg skal ikke endre teller for alle stedene, i stedet jeg trenger å endre teller bare for denne plasseringen.

Ex: Tenk hvis jeg prøver å logge på Oracle for India sted og ikke klarer å logge inn så jeg må oppdatere greven til 2.

Din hjelp vil bli verdsatt.

Takk på forhånd
Raju
  #2 (permalink)  
Old 10-13-2005
blowtorch's Avatar
blowtorch blowtorch is offline Forum Advisor  
Støttespiller
  
 

Bli Dato: desember 2004
Sted: Singapore
Innlegg: 2350
Prøv dette:

Code:
#!/usr/bin/ksh

while read country count; do
   ### try to login to oracle and set some error condition
   if [ #the failure condition is set ]; then
      count=$(($count+1))
   fi
   echo $country $count >> your_file.tmp
done < your_file
mv your_file.tmp your_file
Noen av skriptet er ikke virkelig kode, fordi jeg er ikke sikker på hvordan du skal sjekke om du kan koble til databasen.
  #3 (permalink)  
Old 10-13-2005
rajus19 rajus19 is offline
Registrert bruker
  
 

Bli Date: Feb 2005
Beliggenhet: Bangalore
Innlegg: 36
Det vil bare legge til en linje, hva jeg vil, er jeg nødt til å oppdatere denne posten bare.

Og en ting er, hvordan du får som teller for en bestemt plassering.

Takk for din umiddelbare respons.

Raju
  #4 (permalink)  
Old 10-13-2005
Neo's Avatar
Neo Neo is online now Forum Staff  
Administrator
  
 

Bli Dato: Sep 2000
Sted: Asia
Innlegg: 6766
Det er mange måter å gjøre dette.

Én måte å gjøre det er å skrive en midlertidig fil i en katalog for hver gang en pålogging mislykkes. For eksempel kan katalogen ser slik ut:

india.pid1
us.pid2
uk.pid3

Som du ser kan du legge prosessen id til opprinnelsen for å unngå kollisjoner filnavn.

Så, i en cron-jobb, kan du lese filnavn og legge dem opp for hver opprinnelse. Deretter lese flat fil hvor de tidligere verdiene er lagret i en array og legge til nye og gamle verdier, og skrive den nye filen.

Sørg for å rydde opp i katalogen av midlertidige filer.

Du kan også gjøre dette uten et mellomliggende midlertidige filen brukes som et IPC, i en enkelt prosess, men hvis du har flere logikk feil på en gang, må du nødt til å gjennomføre fillåsing, som kan være langsommere og mer kompleks enn en enkel IPC som en midlertidig fil.

Det finnes utallige måter å gjøre dette. Jeg foreslår at du bruker et mellomliggende tilnærming som jeg foreslo å unngå problemer hvis du får mangfoldig logikk svikt i bølger - Når det er sagt, gjorde du ikke beskrive programmet arkitekturen der faktisk innlogging svikt flagget (påvisning) oppstår.
  #5 (permalink)  
Old 10-13-2005
blowtorch's Avatar
blowtorch blowtorch is offline Forum Advisor  
Støttespiller
  
 

Bli Dato: desember 2004
Sted: Singapore
Innlegg: 2350
Sitat:
Originally Posted by rajus19
Det vil bare legge til en linje, hva jeg vil, er jeg nødt til å oppdatere denne posten bare.

Og en ting er, hvordan du får som teller for en bestemt plassering.

Takk for din umiddelbare respons.

Raju
Observer koden nøye. Jeg skriver til en midlertidig fil, og flytte denne filen til den opprinnelige. dvs. Hvis du ikke klarer å logge inn til India, så jeg skriver 'India 2 "til temp fil. Så jeg prøver å logge inn på USA. Hvis det lykkes, så jeg skal skrive 'kr 0' (den linjen som jeg leste) til filen. Etter at mens loopen er fullført temp filen har korrekt informasjon om pålogging fiaskoer. Så jeg vil flytte midlertidig fil på den opprinnelige filen.
  #6 (permalink)  
Old 10-14-2005
rajus19 rajus19 is offline
Registrert bruker
  
 

Bli Date: Feb 2005
Beliggenhet: Bangalore
Innlegg: 36
Mange takk.

Hilsen,
Raju
Closed Thread

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 02:20.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0