![]() |
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui. |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| Quais são alguns diferentes comandos em c shell e Korn shell? | Equinox | UNIX para Dummies Perguntas & Respostas | 1 | 01-29-2008 12:14 |
| como converter de Korn shell para shell normais com esse código? | forevercalz | Programação Shell Script e | 21 | 11-23-2005 02:18 |
| KORN Shell - Spawn novo reservatório com comandos | frustrated1 | Programação Shell Script e | 2 | 04-20-2005 02:23 |
| Executora Oracle Stored procs de Korn Shell | Vinny_Mitchell | UNIX para Dummies Perguntas & Respostas | 3 | 08-06-2003 04:45 |
| Oracle Para Korn Shell Array | kdst | UNIX & avançada para usuários experientes | 1 | 09-24-2002 09:21 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Korn Shell e Oracle
Oi Pessoal,
Eu não tenho trabalhado muito sobre oráculo, mas tenho uma situação em que eu tenho que fazer BDF em todos os servidores e inserir essas informações em oráculo tabela. Eu já criaram tabela que tem 7 colunas, posso inserir manualmente, mas eu não sei como inserir esse usando Korn shell. SERVER_ID NOT NULL NUMBER (6) FS_LOCAL_NAME NOT NULL VARCHAR2 (200) LOCAL_MOUNT NOT NULL CHAR (1) TOTAL_SPACE NOT NULL NUMBER (10) USED_SPACE NÚMERO (10) SPACE_AVAILABLE NÚMERO (10) PERCENTAGE_USED NÚMERO (3,2) Este é apenas um exemplo, eu tenho feito manualmente e inserir seus dados #! / bin / ksh sqlplus pareshan/ac6e94aac5b1b979902c0b0b1f42621761c @ let01a <<EOF insert into unix_servers valores (1, 'superior', 'Y', 89885485,858757,4657575,2); SAÍDA EOF Mas a coisa que eu preciso é que tenho que executar o comando df dá resultados como esse Filesystem kbytes usados disponíveis utilizadas% Montado em / dev/vg00/lvol4 1048576 298504 744256 29% / / dev/vg00/lvol1 1014648 65224 847952 7% / stand / dev/vg00/lvol8 4194304 1451112 2722456 35% / var / dev/vg3psw/lvol12 3145728 1221208 1804256 40% / var / mqm / dev/vg00/lvol10 4194304 3749008 441888 89% / var / adm / PB / dev/vg00/lvol9 4194304 16744 4144936 0% / var / adm / acidente / dev/vg00/lvol7 5242880 1871528 3345048 36% / usr / dev/vg3psw/lvol1 4194304 3867784 323984 92% / usr / local / dev/vg3psw/lvol7 10338304 8815105 1428012 86% / usr / local / vértex / dev/vg3psw/lvol2 12738560 8080720 4622144 64% / usr / local / oracle / dev/vg3psw/lvol9 5120000 1286387 3594077 26% / usr/local/g1_3.2_SE / dev/vghome_old/lvol1 e têm de inserir esses dados na respectiva coluna do oráculo tabela. Plz Ajuda, |
|
||||
|
Jim oi, em primeiro lugar, graças
Tenho feito algo parecido com isto este é controlfile control_file LOAD DATA INFILE '/ home/gc1488/FST/input' INTO TABLE unix_servers FIELDS TERMINATED BY ',' opcionalmente ENCLOSED BY ' "' (SERVER_ID NÚMERO (6), SERVER_NAME VARCHAR2 (20), MERCADO CHAR (3), SERVER_TYPE VARCHAR2 (15), PROD_IND CHAR (1), PROPRIETÁRIO VARCHAR2 (20)) Já tenho arquivo de entrada nesse local. Uma coisa a tabela im vai usar já deveria existir ou doesnt assunto, porque eu tenho que inserir na tabela que já está lá. mas neste exemplo im tentando usar a tabela que doesnt existe porque acho que vai criar sqlldr tabela se doesnt existe certo? Mas eu tenho um erro, ele diz que SQL * Loader-350: Syntax erro na linha 5. Espera "," ou ")", encontrado "NÚMERO". (SERVER_ID NÚMERO (6), ^ Também poderia me dizer como posso usar a tabela existente aqui. muito obrigado |
|
||||
|
Seu quadro teria necessidade de existir antes de tentar carregá-lo. SQL * Loader não fazer isso. Você iria criar este no SQL * Plus, etc
Caso contrário, utilizando um tubo-arquivo delimitado por exemplo: Controle Arquivo: Código:
load data infile '/opt/axs/dbgora/ctron/data/useraudt/userupld'
replace into table
CTRONRPT.TUSERFILE3
fields terminated by "|" optionally enclosed by '"'
(USER_ID ,
USER_NAME ,
OPEN_FILENAME ,
OPEN_LIBRARY ,
OPEN_VOLUME ,
WO_INTERFACE ,
OPERATOR_LEVEL ,
SECURITY_LEVEL ,
PRINT_CLASS ,
PRINT_MODE ,
PRINTER_NUM ,
AD_COMPANY_SW ,
AD_COMPANY_0 ,
AD_COMPANY_1 ,
AD_COMPANY_2 ,
AD_COMPANY_3 ,
AD_COMPANY_4 ,
AD_COMPANY_5 ,
AD_COMPANY_6 ,
AD_COMPANY_7 ,
AD_COMPANY_8 ,
AD_COMPANY_9 ,
CORPORATE_SW ,
PAGE_SIZE_ADDER ,
LOGOFF_TIME_INTERVAL_MIN ,
GROUP_CODE ,
PASSWORD ,
PRINTER_TOP_MARGIN ,
GUEST_ID ,
GUEST_PASSWORD ,
REFRESH_CACHE_SW ,
USER_DEFINED_AREA )
Código:
# Run SQL*Loader utility to replace ctronrpt.tuserfile3 table...
sqlldr \
userid=${my_userparm} \
control=${my_control} \
data=${my_datfile} \
silent=${my_silence} \
log=${my_logfile} \
bad=${my_badfile} >>${MY_LOG} 2>&1
# Confirm results via return code...
retcode=$(echo ${?} )
case ${retcode} in
0)
print "\n\t\tSQL*Loader execution successful "
;;
1)
print "\n\t\tSQL*Loader execution exited with EX_FAIL, see ${my_logfile} "
;;
2)
print "\n\t\tSQL*Loader exectuion exited with EX_WARN, see ${my_logfile} "
;;
3)
print "\n\t\tSQL*Loader execution encountered a fatal error "
;;
*)
# Huh...?
print "\n ===\n\n ${my_name}: $(date) " |tee -a ${MY_LOG}
print "\n\t${retcode} not valid recognized..." |tee -a ${MY_LOG}
print "\n\t " |tee -a ${MY_LOG}
print "\n\tReturned: ${retcode} ${*} \n" |tee -a ${MY_LOG}
logger_heads ; return 2
;;
esac >>${MY_LOG} 2>&1
|
|
||||
|
Muito obrigado, eu realmente aprecio e que você está certo eu posso fazer com o que fizeram e eu também, mas aqui está a torcer.
BDF meu comando dá-me um bando de saída Acho que se eu imprimi-lo aqui esta será uma longa lista, mas estou certo de que você está ciente disso. Inclui arquivo local SYTEM + montado todos os sistemas de arquivo e é claro que eu cant que colocar em uma linha de uma tabela para que eu preciso calcuate que usar script e descobrir (total, usada, livre e utilizada percentuais) e apenas as informações I pode entrar na tabela. Eu tentei escrever Korn shell script para isso, mas a sua não são fáceis, mas ainda estou tentando. Alguém tem algum script ou já têm alguma ideia sobre isso. Espero ter tornado claro desta vez. Se alguma dúvida, por favor me avise. Eu aprecio sua ajuda Thaks um lote |
|
||||
|
Oi Pareshan,
Experimente esta abordagem. Isso irá gerar um script SQL a partir de saída do comando df e em seguida inserir os dados. # -------------------------------------- server \u003d `hostname` # Obter nome do servidor em um reservatório veriable sqlfile \u003d $ server.sql df | awk-v serv \u003d $ servidor ' (print "insert into tabela1 values (~" serv "~,~" $ 1 "~,~" $ 6 "~," $ 2 "," $ 3 "," $ 4 "," $ 5 ")";) '| sed -e "s /~/'/ g"-e 's /%//'> $ sqlfile # Awk No comando acima irá gerar inserir declaração de saída do DF # Em seguida, primeiro sed irá substituir todos ~ único com citação # Próxima sed vai tirar o percentual suspiro da inserção Agora insira os dados sqlplus-s / nolog <<EOSQL utilizador ligar / pass @ sid sempre sqlerror saída 99 - Se houver erro, esta sqlplus vai sair com estatuto não-zero @ $ sqlfile COMMIT; saída EOSQL if [[$? -ne 0]] então echo "Erro ao executar o ficheiro $ sqlfile ..... Run ... pânico .... investigar" fi # ------------------------------------------------ Eu não tenho uma sessão Unix em mãos, então eu não executar o script e testados, mas isso vai funcionar. Tenho feito isso antes. Aproveite ... |
|
||||
|
Oi todos, eu realmente aprecio as suas respostas, e agora sou capaz de fazer sqlloader parte.
mynameisrahu, thats não funciona para mim como eu tenho que fazer para que a BDF produção, Agora o meu problema é só que quero formatar o BDF saída com os valores separados por um espaço e colocar isso em arquivo texto para que eu possa alimentados em que o oráculo tabela. Como mencionei antes da minha BDF dará algumas unformatted saída como abaixo, que contém espaços aleatórios e você pode ver alguns dos valores vai para a segunda linha também, eu quero a spearated valores por um espaço em uma linha plz help, Filesystem kbytes usados disponíveis utilizadas% Montado em / dev/vg00/lvol4 1048576 314096 728792 30% / / dev/vg00/lvol1 1014648 65224 847952 7% / stand / dev/vg00/lvol8 4194304 1462872 2711512 35% / var / dev/vg3psw/lvol12 3145728 1221224 1804241 40% / var / mqm / dev/vg00/lvol10 4194304 3749008 441888 89% / var / adm / PB / dev/vg00/lvol9 4194304 16744 4144936 0% / var / adm / acidente / dev/vg00/lvol7 5242880 1871472 3345104 36% / usr / dev/vg3psw/lvol1 4194304 3883768 308128 93% / usr / local / dev/vg3psw/lvol7 10338304 8815105 1428012 86% / usr / local / vértex / dev/vg3psw/lvol2 12738560 8080712 4622152 64% / usr / local / oracle / dev/vg3psw/lvol9 5120000 1286387 3594077 26% / usr/local/g1_3.2_SE / dev/vghome_old/lvol1 23552000 10375127 12353732 46% / usr/local/g1 / dev/vg3psw/lvol3 2097152 137104 1944800 7% / usr / local / dazel / dev/vg3psw/lvol8 1228800 302520 919104 25% / usr / local / CCMI / dev/vg3psw/lvol10 4096000 3714067 358124 91% / usr / local / TWS / dev/vgapp/lvol5 2097152 16192 2072336 1% / tuxhome / dev/vgapp02/lvol1 153616384 100673926 49663667 67% / tuxappl / dev/vg00/lvol6 1540096 43712 1489168 3% / tmp / dev/vgapp-io/lvol1 199155712 153290696 45685856 77% / tlgvar / dev/vgapp/lvol4 20971520 2912 20804800 0% / tlg / dev/vgapp/lvol2 65536000 1138272 63894704 2% / relatórios / dev/vgmafg/lvol1 52396032 6968 51982472 0% / pvdev / dev/vgapp/lvol6 204800 10712 192632 5% / p / sbms / dev/vgapp/lvol7 102498304 48411704 53675288 47% / p / sbms / mps / dev/vgdbcommon/lvol2 167755776 139972872 27572816 84% / oraexp / dev/vg00/lvol5 4194304 3641336 548688 87% / opt / dev/vg3psw/lvol11 3145728 527068 2455009 18% / opt / mqm / dev/vg3psw/lvol5 1048576 388952 654520 37% / opt / Iona / dev/vg3psw/lvol13 1048576 1357 981775 0% / opt/app/d1mqmm1 / dev/vg3psw/lvol6 2097152 654456 1433328 31% / opt / app / BMC / dev/vgapp/lvol3 2097152 24344 2056680 1% / Opcode / dev/vgapp/lvol9 25624576 24107916 1494984 94% / mps / dev/vghome_old/lvol5 5.144.576 185.360 4.649.319 4% / lsms_tool / dev/vgapp-io/lvol2 2097152 5200 2075808 0% / logs / dev/vgdbcommon/lvol1 18432000 1510104 16794280 8% / logs / ORACLE / dev/vghome/lvol1 62898176 58195552 4702624 93% / home / dev/vgapp/lvol8 524288 290587 219125 57% / EMC / dev/vgd2bl12d_2/lvol3 20512768 6129 19224982 0% / csmtier1/logs / dev/vgapp/lvol10 1048576 6334 977155 1% / csmscripts / dev/vghome_old/lvol6 51707904 3864 51300112 0% / ora_D2BL12B_4 / dev/vgd2bl12b_2/lvol1 52396032 4155472 47863744 8% / ora_D2BL12B_3 / dev/vgd2bl12d_2/lvol2 34209792 29055568 5114024 85% / ora_D2BL42D_2 / dev/vghome_old/lvol7 62898176 61460312 1426640 98% / ora_D2BL42C_5 / dev/vghome_old/lvol4 30720000 3216 30476816 0% / ora_D2BL12A_3 / dev/vghome_old/lvol3 36126720 9960 33859469 0% / ora_D2BL12B_2 / dev/vghome_old/lvol2 20480000 4098928 16253104 20% / ora_D2BL42C_4 / dev/vgd2bl42a_2/lvol2 26214400 25687784 522512 98% / ora_D2BL42C_3 / dev/vgd2bl42e/lvol1 52412416 23481928 28704536 45% / ora_D2BL42E / dev/vgd2bl42d/lvol1 20955136 10502664 10370880 50% / ora_D2BL42D / dev/vgd2bl42c_2/lvol1 41926656 39955584 1955680 95% / ora_D2BL42C_2 / dev/vgd2bl42c/lvol1 20955136 18765072 2172960 90% / ora_D2BL42C / dev/vgd2bl42b/lvol1 26198016 4115056 21910448 16% / ora_D2BL42B / dev/vgd2bl42a_2/lvol1 15.728.640 2784 15.603.008 0% / ora_D2BL42A_2 / dev/vgd2bl42a/lvol1 20955136 19273216 1668784 92% / ora_D2BL42A / dev/vgd2bl42e/lvol2 20.955.136 2920 20.788.536 0% / ora_D2BL42E_2 / dev/vgd2bl43c/lvol1 15712256 12684776 3003896 81% / ora_D2BL43C / dev/vgd2bl43b/lvol2 14680064 14338784 338624 98% / ora_D2BL43B_2 / dev/vgd2bl43b/lvol1 47169536 46710616 455400 99% / ora_D2BL43B / dev/vgd2bl43a/lvol1 12566528 11622368 936848 93% / ora_D2BL43A / dev/vgd2bl12d_2/lvol1 30736384 17104 30479296 0% / ora_D2BL12D_2 / dev/vgd2bl12d/lvol1 20963328 16697736 4232272 80% / ora_D2BL12D / dev/vgapp/lvol11 51298304 3864 50893712 0% / ora_D2BL12C_4 / dev/vgd2bl12c_2/lvol2 41910272 3560 41579328 0% / ora_D2BL12C_3 / dev/vgd2bl12c_2/lvol1 41910272 3560 41579328 0% / ora_D2BL12C_2 / dev/vgd2bl12c/lvol1 131047424 124934576 6065160 95% / ora_D2BL12C / dev/vgd2bl12b/lvol1 146743296 106296952 40130408 73% / ora_D2BL12B / dev/vgd2bl12a_2/lvol2 52396032 4201448 47818072 8% / ora_D2BL12A_4 / dev/vgd2bl12a_2/lvol1 52396032 3880 51982848 0% / ora_D2BL12A_2 / dev/vgd2bl12a/lvol1 78618624 76804888 1799640 98% / ora_D2BL12A / dev/vg27/lvol3 204865536 197661672 7147648 97% / ora_D2BL42A_3 / dev/vg27/lvol2 307232768 26120 304806672 0% / ora_D2BL42B_2 / dev/vg27/lvol1 307232768 287320072 19757192 94% / ora_D2BL43A_2 dhtqa2: / nvqa_98 83886080 69989880 13789704 84% / nvqa_98 / dev/vg27/lvol4 20578304 9825080 10669224 48% / ora_fbf_1 dhdtlgcc: / nvdev5 51249152 43721568 7057120 86% / nvdev_98a dhdtlgcc: / nvdev5 51249152 43721568 7057120 86% / nvdev_97a dhdtlgcc: / scdev2 2097152 477720 1518240 24% / scdev_30 dhdtlgcc: / scdev5 2097152 478104 1517880 24% / scdev_30a dhdtlgcc: / scdev5 2097152 478104 1517880 24% / scdev_29 dhdtlgcc: / fbfdev2 1048576 332856 671776 33% / fbfdev_98 dhdtlgcc: / fbfdev5 1048576 338832 665408 34% / fbfdev_98a dhdtlgcc: / fbfdev5 1048576 338832 665408 34% / fbfdev_97a dhdtlgcc: / fbfdev1 1048576 320664 683960 32% / fbfdev_97 dhdtlgcc: / scdev4 2097152 312832 1673720 16% / scdev_28 dhdtlgcc: / nvdev4 68157440 39546928 26825408 60% / nvdev_96 dhdtlgcc: / nvdev5 51249152 43721568 7057120 86% / nvdev_96a dhdtlgcc: / nvdev3 77463552 44335616 31057448 59% / nvdev_95 dhdtlgcc: / qproj4 82706432 66679968 15915696 81% / qproj4 dhdtlgcc: / qproj3 81920000 58942336 21561512 73% / qproj3 dhdtlgcc: / qproj2 81920000 67528304 13497008 83% / qproj2 dhdtlgcc: / qproj1 82706432 50596336 30184632 63% / qproj1 dhtqa2: / qa_data 15728640 7164848 8044104 47% / qa_data dhtqa2: / fbfqa_98 20971520 1416464 19403080 7% / fbfqa_98 dhtqa2: / scqa_30 3145728 1561032 1486552 51% / scqa_30 dhtqa2: / scqa_26 2097152 633680 1372048 32% / scqa_26 dhtqa2: / nvqa_97 82968576 67342968 14649040 82% / nvqa_97 dhtqa2: / nvqa_96 102760448 76883520 24263072 76% / nvqa_96 dhtqa2: / nvqa_93 50634752 39384216 10547440 79% / nvqa_93 dhdtlgcc: / fbfdev4 1048576 311528 691768 31% / fbfdev_96 dhdtlgcc: / fbfdev2 1048576 332856 671776 33% / fbfdev_94 dhdtlgcc: / fbfdev1 1048576 320664 683960 32% / fbfdev1 dhdtlgcc: / scdev5 2097152 478104 1517880 24% / scdev1 dhtqa2: / fbfqa_97 30932992 1358472 27726128 5% / fbfqa_97 dhtqa2: / scqa_29 26214400 972984 25045088 4% / scqa_29 fúrcula: / Opcode 18874368 1379552 17365704 7% / opcode_qa dhttrn1: / TCE 2097152 265848 1826960 13% / TCE dhdtlgcc: / home / cc 40960000 37415632 3322888 92% / home / cc dhdtlgcc: / nvdev1 49807360 44079800 5369648 89% / nvdev_97 dhdtlgcc: / nvdev2 51249152 42715696 8000136 84% / nvdev_98 dhdtlgcc: / fbfdev5 1048576 338832 665408 34% / fbfdev_71a dhdtlgcc: / fbfdev3 1048576 339872 664432 34% / fbfdev_71 dhdtlgcc: / scdev5 2097152 478104 1517880 24% / scdev_31a dhdtlgcc: / scdev3 2097152 441920 1551800 22% / scdev_31 dhdtlgcc: / nvdev5 51249152 43721568 7057120 86% / nvdev_71a dhdtlgcc: / nvdev3 77463552 44335616 31057448 59% / nvdev_71 dhdtlgcc: / fbfdev3 1048576 339872 664432 34% / fbfdev_95 dhdtlgcc: / scdev3 2097152 441920 1551800 22% / scdev_27 dhqtlgmm: / tlg 325058560 260120792 60892864 81% / ndev_988 dhtqa2: / nvqa_71 82968576 67342968 14649040 82% / nvqa_71 dhtqa2: / scqa_31 26214400 972984 25045088 4% / scqa_31 dhtqa2: / fbfqa_71 30932992 1358472 27726128 5% / fbfqa_71 dhtqa1: / qadmin 1048576 59888 981376 6% / qadmin Eu uso perl também para o seu formato, mas não está funcionando adequadamente e para BDF mesmo script funciona para todos os outros arquivos que possuem espaços aleatórios ou formato. plz help guys thanks in advance |
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|