The UNIX and Linux Forums  

Go Back   O UNIX e Linux Forum > Top Fóruns > Programação Shell Script e
.
google unix.com



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
Para Loop com Strings como parâmetros kadishmj Programação Shell Script e 6 10-06-2008 04:57
sed e parâmetros scotty_123 Programação Shell Script e 7 03-26-2007 05:22
Precisa de Ajuda Parâmetros. james2006 Programação Shell Script e 3 06-08-2006 11:46
como obter a função semelhante no ciclo while ou para loop trynew Programação Shell Script e 3 06-17-2002 12:09
tar parâmetros kmar UNIX & avançada para usuários experientes 4 10-23-2001 04:03

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 Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 03-18-2008
mgirinath mgirinath is offline
Usuário
  
 

Join Date: May 2005
Lugares: 69
Parâmetros em loop

Oi,

Estou tentando escrever um script que lerá insumos forma usuário e processar esses arquivos, não tenho problema ler os parâmetros de entrada em um loop. A seguir está o script ...

Código:
I run the script as ./Script.sh 3 table1 table 2 table3

NumberOfTables=$1
let TableCount=1

while [ ${NumberOfTables} -gt 0 ]
do

 TableName='$'$TableCount
 
 db2 "runstats on table ${TableName} and indexes all"

 let  TableCount=TableCount+1
 let  NumberOfTables=NumberOfTables-1

done
exit 0

Aqui eu não sou capaz de captar tabela1 tabela2 e table3 no loop que imprime tablename como $ 1 $ 2 e US $ 3, mas não os nomes que são dados como entrada.

pode me ajudar em algumas um presente ....
  #2 (permalink)  
Old 03-18-2008
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
Modérateur
  
 

Join Data: dezembro 2007
Localização: Home, de 17 de tempo de campeão mundial de Boston Celtics
Posts: 1.311
Wink Claro como está a avançar através de variáveis

Tendo problemas para seguir sua lógica, mas talvez os seguintes pensamentos vão ajudar esta andando:
(1) A variável "$ #" será o número de parâmetros fornecidos. Assim, talvez nenhuma necessidade para o primeiro 3, após o seu comando, pois você poderá pular este e então fazer NumberOfTables \u003d"$#"
(2) A mudança função permite um script para manter a transformação referências para $ 1. Assim, você faria o seu primeiro conjunto de comandos e, em seguida, fazer uma mudança. Shift move o que está em R $ 2 para $ 1, $ 3 a $ 2, etc .. ; O que estava em R $ 1 está agora desaparecido.
  #3 (permalink)  
Old 03-18-2008
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
Modérateur
  
 

Join Data: dezembro 2007
Localização: Home, de 17 de tempo de campeão mundial de Boston Celtics
Posts: 1.311
Wink Uma tentativa de alguns códigos

Eu não acho que você precisa do TableCount variável, e talvez algumas outras coisas dentro do seu código original. Esperemos que isto irá colocá-lo em seu caminho ...


Código:
> cat script.sh
#! /bin/bash

NumberOfTables="$#"
let TableCount=1

while [ ${NumberOfTables} -gt 0 ]
do

 TableName='$'$TableCount
 
# db2 "runstats on table ${TableName} and indexes all"
# echo ${TableName}
 echo $1
 shift 

 let  TableCount=TableCount+1
 let  NumberOfTables=NumberOfTables-1

done
exit 0

Citação:
> Script.sh tabela1 tabela2 table3
tabela1
tabela2
table3
  #4 (permalink)  
Old 03-18-2008
mgirinath mgirinath is offline
Usuário
  
 

Join Date: May 2005
Lugares: 69
Graças Contribuiu muito ...
Closed Thread

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 09:49.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0