The UNIX and Linux Forums  

Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
UNIX-skript för att ta de gamla data från en txt-fil och tryck ihop dem till nya filen vpandey Shell-programmering och Skript 2 03-05-2008 11:10
Behöver Shell Script för att ladda upp data från Textfil till Oracle databas chandrashekharj Shell-programmering och Skript 6 03-26-2007 04:21
Shell Script för Data laddas i Oracle raghuraja_r Shell-programmering och Skript 3 07-21-2006 11:00
Shell Script att ladda data i databasen med en. Csv-fil och. CTL fil Csmani Shell-programmering och Skript 3 05-24-2006 09:09
UNIX-skript för att exportera data från csv-fil till Oracle databas vinayagan Shell-programmering och Skript 3 07-20-2005 05:16

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 denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 05-25-2008
grajesh_955 grajesh_955 is offline
Registered User
  
 

Join Date: februari 2008
Inlägg: 18
UNIX-script för att ladda ett data från en fil i databas

Hej Alla,

Jag försöker att ladda ett data från ett register i en viss katalog till en databas ..

cd $ SCC
isql metdb>> $ (LOGDATA) / LOAD.LOG <!
last "$ (LDATA) / $ (form). ld" Sätt in $ LOADTABLE
!

Men det visar fel "syntax error på rad 46:" << "oöverträffade"
Kanna fullständig plz hjälpa mig ...
  #2 (permalänk)  
Old 05-25-2008
FlyingSquirrel FlyingSquirrel is offline
Registered User
  
 

Join Date: maj 2008
Inlägg: 38
Citat:
Ursprungligen postat av grajesh_955 View Post
Hej Alla,

Jag försöker att ladda ett data från ett register i en viss katalog till en databas ..

cd $ SCC
isql metdb>> $ (LOGDATA) / LOAD.LOG <!
last "$ (LDATA) / $ (form). ld" Sätt in $ LOADTABLE
!

Men det visar fel "syntax error på rad 46:" << "oöverträffade"
Kanna fullständig plz hjälpa mig ...
- - - --
Det verkar som din här dokumentet behöver en mer mindre än tecken

första delen ... <<!
kommandon ...
!
  #3 (permalänk)  
Old 05-25-2008
grajesh_955 grajesh_955 is offline
Registered User
  
 

Join Date: februari 2008
Inlägg: 18
Förlåt ... det faktiska ript har

cd $ SCC
isql metdb>> $ (LOGDATA) / LOAD.LOG << !
last "$ (LDATA) / $ (form). ld" Sätt in $ LOADTABLE
!
  #4 (permalänk)  
Old 05-25-2008
FlyingSquirrel FlyingSquirrel is offline
Registered User
  
 

Join Date: maj 2008
Inlägg: 38
Vilken databas använder du? (är det Informix?)

Ta det utrymmet mellan <<och!

(inte säker på om det hjälper)
Om det är Informix Jag brukade använda en trevlig skrift lätt lastning tabeller från pipe-avgränsade filer.
  #5 (permalänk)  
Old 05-26-2008
grajesh_955 grajesh_955 is offline
Registered User
  
 

Join Date: februari 2008
Inlägg: 18
yah ..... Dude ... Jag använder Informix databas ..... plz gimme ur manus för att läsa in tabeller från pipe-avgränsade filer.
  #6 (permalänk)  
Old 11-08-2008
FlyingSquirrel FlyingSquirrel is offline
Registered User
  
 

Join Date: maj 2008
Inlägg: 38
Ladda pipe-avgränsade filer med Informix

Detta är ett script jag skrev som gör lastningen
pipe-avgränsade filer väldigt enkelt. Du behöver inte komma
skapa kommandot ärende eftersom det gör det för
du. Det kontrollerar första raden i filen som du är
Laddar för att se till att antalet fält och
antalet kolumner i tabellen match.
Syntax: dbload.sh databasename tablename
filename

Här är den:
###--- klippa här ---###
#! / bin / ksh
# Manus: dbload.sh
# Freeware
# Verktyget körs Informix dbload utility
skapa den nödvändiga kommandot
# Fil som används av dbload automatiskt. Det tar
tre parametrar,
# Databas tablename, och rörsystem avgränsas
datafile.
# Det kontroller 1: a raden i datafile att göra
Kontrollera att den innehåller
# Samma antal områden som tabellen är det
laddas in innan
# En belastning kan äga rum.
# Parametrarna:
# $ 1 \u003d databasnamn
# $ 2 \u003d namn
# $ 3 \u003d datafile namn
# $ 4 \u003d nocheck (frivilligt, för att undvika kontroll av
antal rör i fil och tabell)

ANVÄNDNING \u003d "\ n \ nUsage: dbload.sh databas tablename
datafile [nocheck] \ n "
if (($ # <3)) # Tre parametrar
nödvändig
sedan
print "Ett verktyg för att ladda ett rörsystem avgränsas
datafile i en databas tabellen "
print $ ANVÄNDNING
exit 1
fi

DATABASE \u003d $ 1
TABLENAME \u003d $ 2
DATAFILE \u003d $ 3
NOCHECK \u003d $ 4

# Returnera antal kolumner i databasen tabellen
TBLCOLS \u003d $ (dbschema-d $ (DATABAS)-t $ (TABLENAME)
| Grep "antalet kolumner" | sed 's / ^ .* kolumner \u003d
/ / '| sed 's / index .*$//')
om [[-z $ TBLCOLS]]
sedan
print "Fel: tabell som inte finns i databasen"
exit 1
fi
# echo "TABELL COLUMNS \u003d" $ TBLCOLS

om [[$ NOCHECK! \u003d "nocheck"]]
sedan
# Returnera antal kolumner i datafile - måste matcha
tabellen kolumn räkna
#Sed passerar 1:a uppgifter rad sed tar bort alla utom
rörledningar och tilldela strängen
PIPESTR \u003d "sed -n "1, 1p" $ (DATAFILE) | sed
är /[^|]*// g ""
# Längden av strängen kommer att antalet
datakolumner i filen
DATCOLS \u003d $ (# PIPESTR)
annan
# Ingen kontroll, antar antalet kolumner
korrekt
DATCOLS \u003d $ TBLCOLS
fi

om [$ TBLCOLS \u003d $ DATCOLS]
sedan
# echo "Bordsdruvor och datafile kolumn räknas är
samma "
print "Processing ... Please wait ... "
ERRSALLOWED \u003d 10
Loggfil \u003d load_ $ (TABLENAME). Logga

# bygga kommando fil med unik tidsstämpel
Timestamp \u003d "datum +% Y% m% d_% H% M% S"
CMDFILE \u003d / tmp / loadcmd. $ TIMESTAMP
echo "FILE "'"'${ DATAFILE)" avgränsare "|"
"$ (TBLCOLS)", "> $ (CMDFILE)
echo "infoga i" $ (TABLENAME) ",">>
$ (CMDFILE)

dbload-d $ (DATABAS)-c $ (CMDFILE)-l
$ (Loggfil)-e $ (ERRSALLOWED)
rm $ (CMDFILE)
print "Laddar Kompl."
annan
echo "Bordsdruvor och Datafile Antal kolumner göra
inte stämmer överens: "$ (TBLCOLS)" och "$ (DATCOLS)
fi

###--- Klippa här ---###

Vad du kan göra är att ha ett script som gör det
något i stil med följande:

echo 'drop tabellen mytable "| dbaccess mydatabase
dbaccess mydatabase mycreatetablescript.sql
dbload.sh mydatabase mytable mydatafile

Jag hoppas det hjälper.
Closed Thread

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 08:36.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0