![]() |
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| UNIX for Dummies Spørsmål og svar Hvis du er usikker på hvor du skal legge inn en UNIX-eller Linux-spørsmålet, legger den her. Alle UNIX og Linux newbies velkommen! |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| Les csv i Hash array? | kinmak | Shell programmering og Skripting | 1 | 05-07-2008 11:35 |
| opprette array holde tegn fra sring deretter ekko matrise. | rorey_breaker | Shell programmering og Skripting | 5 | 09-28-2007 09:42 |
| Fra fil til Array | Rock | Shell programmering og Skripting | 2 | 02-08-2007 06:10 |
| Dump en matrise i en fil | IMD | Shell programmering og Skripting | 3 | 08-31-2006 11:04 |
| Hvordan kan jeg lese matrise elementer dynamisk i bash? | haisubbu | UNIX for Dummies Spørsmål og svar | 1 | 08-29-2006 03:19 |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
||||
|
Hvordan lese fra txt-fil og bruke det som en matrise
Hei Fyrene
Hvordan u all doing? Jeg har vanskelig tid for å oppnå dette jeg har en unix. Ksh script som samtaler sql script Akkurat nå er jeg harcoded kolonnen id's in sql script, men jeg ønsker å lese dem fra en txt fil 1084,1143,1074,1080,1091,1090,1101,1069,1104,1087,1089,1081 Jeg vil lese denne filen som en matrise i mitt sql script Min ksh script er #! / usr / bin / ksh DIRNAME \u003d `dirname $ 0` # Sette opp miljø for oracle basert SMO database forekomst . $ Dirname / defaults_env.ksh echo "Enter regionen (dvs. 001 eller 002):" les sdzone; eksport userFile \u003d "cvsusers.txt" Logfile \u003d $ dirname / cvs_users_defaults.log TIME \u003d `date` # sjekker om loggfilene er tilstede, hvis ikke så skaper det if [-a $ dirname / cvs_users_defaults.log] så : ellers touch $ dirname / cvs_users_defaults.log fi # Sjekket for å se om en datafil (cvsusers.txt) finnes for en belastning. if [-a $ dirname / $ userFile] så # Listen over userIds leveres fra brukerid fil INFILE \u003d $ userFile; echo "Bruke filen $ INFILE som input for bruker-id"; echo ""; echo "Startet prosessen på $ TIME">> $ logfile echo "Calling prosedyre å initialisere brukere" for brukerid in `cat $ INFILE` gjøre echo "Lagre User Defaults for bruker" $ userid>> $ logfile userIdLength \u003d `expr lengde $ userid` if [$ userIdLength-gt 8] så echo "lengde UserID" $ userid "er for lang">> $ logfile ellers echo "koble til SQL">> $ logfile Hvis [[$ sdzone \u003d '001 ']]; deretter sqlplus-s $ ZONE1_USERNAME_525 / $ ZONE1_PASSWRD_525 @ $ ZONE1_DBNAME_525 \ @ $ dirname / sql / cvs_users_defaults.sql $ userid>> logfile echo "koblet til SQL">> $ logfile elif [[$ sdzone \u003d '002 ']]; deretter sqlplus-s $ ZONE2_USERNAME_525 / $ ZONE2_PASSWRD_525 @ $ ZONE2_DBNAME_525 \ @ $ dirname / sql / cvs_users_defaults.sql $ userid>> logfile echo "koblet til SQL">> $ logfile ellers echo "Ugyldig region kode!" exit; fi fi ferdig # endre navnet på filen etter behandling logtime \u003d `date" +% Y% m% d% H% M% S "` newUserFile \u003d "cvs_users_processed_" $ logtime ". txt" mv $ userFile $ newUserFile echo "Ending prosessen med å sette brukeren defaults på kr TIME">> $ logfile echo "Sjekk loggfilen på $ logfile" exit 0 ellers # IF "custsoncologyusers.txt" finnes ikke i dirname da slutten grasiøst echo "Ingen bruker standard fil (userFile $) er tilgjengelig for å laste" echo "Ingen bruker standard fil (userFile $) er tilgjengelig for å laste">> $ logfile echo "Ending bruker standard prosess med en avkastning kode 0 på kr TIME">> $ logfile exit 0 fi Dette er min sql script (cvs_users_defaults.sql) Når SQLERROR EXIT SQL.SQLCODE; satt serveroutput på; satt bekrefte off; satt tilbakemelding off; erklærer brukerid s_user_cust_acct.user_id% TYPE: \u003d '& 1'; TYPE t_col_id_tab ER TABELL av antall; my_col_id t_col_id_tab; TYPE t_col_seq_num_tab ER TABELL av antall; my_col_seq_num t_col_seq_num_tab; TYPE t_all_col_id_tab ER TABELL av antall; all_col_id t_all_col_id_tab; tcount number; begynne velger count (*) inn tcount fra s_column_atrb der user_id \u003d UPPER (userid) og screen_typ_cd \u003d 0; if (tcount> 0) Then dbms_output.put_line ( 'oppdaterer s_column_atrb' | | brukerid); - For Orders (Jeg hard kodet tabellen her, men jeg vil lese dette fra. Ksh skriptet ved å mate den med en txt-fil) all_col_id: \u003d t_all_col_id_tab (1069,1071,1072,1073,1074,1075,1076,1077,1078,1080,1081,1082,1083,1084,1085,1086,108 7,1088,1089,1090,1091,1101, 1102,1103,1104,1114,1115,1116,1117,1118,1119,1120,1122,1123,1124,1125,112 6,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136 , 1137,1138,1139,1140,1141,1142,1143,1144,1145,114 6,1147,1148,1149,1150,1151,1152,1154,1169,1178,1182,1183,1195); my_col_id: \u003d t_col_id_tab (1084,1143,1074,1080,1091,1090,1101,1069,1104,1087,1089,1081); my_col_seq_num: \u003d t_col_seq_num_tab (4,12,2,6,7,8,10,1,9,3,5,11); For i in 1 .. 12 LOOP dbms_output.put_line ( 'my_col_id (' | | i | | ') er' | | my_col_id (i)); oppdatering s_column_atrb set show_hide_ind \u003d 'Y', column_seq_num \u003d my_col_seq_num (i) der user_id \u003d UPPER (userid) og screen_typ_cd \u003d 0 og col_id \u003d my_col_id (i); END LOOP; end; / exit kan noen hjelpe kroppen til å få dette gjort Takk på forhånd Pinky |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|