Script que recebe parametros e gera um arquivo

Publicado por Mauricio 18/10/2004

[ Hits: 8.712 ]

Homepage: https://sites.google.com/site/maurcps1/

Download shel.sh




Este script recebe parametros e gera um arquivo.
Muito util para quem trabalha em ambientes que
contém arquivos precisam ser alterados constantemente.
Se o arquivo não existir  o script o cria e se existir
remove o antigo e cria um novo, para uma maior segurança
ao invés de remove-lo pode apenas modificar o código para
renomea-lo.

  



Esconder código-fonte

#!/bin/ksh
# Script para gerar arquivos de configuracao .
# Nome: 
#   shel.sh
#
# Sintaxe: 
#   shel.sh < patch > < opc1 > < pg1 > < op2 > < pg2 > < file >
#
# Autor:Mauricio de A Pereira
#       
#   
#
# Data:
#      18/10/2004
#
# Descricao:
#       Cria e configura arquivos .
#
#         
################################################################################

exec 6<&0  
# Validacao da sintaxe
if [ $# -gt 6 ] || [ "$1" = "-help" ]
    then
    echo ""
    echo " Sintaxe:"
    echo "    shel.sh < patch > < opc1 > < pg1 > < op2 > < pg2 > < file >"
    echo ""
    echo " Descricao:"
    echo "    Cria e configura o arquivo."
    echo ""
    echo " Parametros:"
    echo ""
    echo "   \"-help\""
    echo "   Imprime essa mensagem"
    echo ""
    echo "   < patch >"
    echo "   Caminho onde sera criado o arquivo"
    echo ""
    echo "   < opc1 >"
    echo "   Parametro 1"
    echo ""
    echo "   < pg1 >"
    echo "   Valor que sera atribuido ao parametro 1"
    echo ""
    echo "   < opc2 >"
    echo "   Parametro 2"
    echo ""
    echo "   < pg2 >"
    echo "   Valor que sera atribuido ao parametro 2" 
    echo ""
    echo "   < file >"
    echo "   Arquivo de saida"
    echo ""
exit 1
fi    


echo "\n\n"
echo " ***********************************************************"
echo " *                                                         *"
echo " *    Configura e cria arquivo                             *"
echo " *                                                         *"
echo " ***********************************************************"
echo "\n"



###################################################
#                                                 #
#    Leitura dos dados de entrada                 #
#                                                 #
###################################################



# Pede Patch do usuario
if [ $# -lt 1 ]
    then
    while [ -z "$patch" ]
      do
      echo ""
      echo "Entre com o caminho onde deve ser criado o arquivo. Exemplo: /home/maurcps/util"
      echo "PATCH: \c"
      read patch
      patch=`echo $patch`
    done
else
    patch=`echo $1 | tr '[a-z]' '[A-Z]'`
fi
export patch


# Pede o opc1
if [ $# -lt 2 ]
    then
    while [ -z "$opc1" ]
      do
      echo ""
      echo "Entre com o valor de OPC1 EX:HOST"
      echo "OPC1: \c"
      read opc1
      opc1=`echo $opc1| tr '[a-z]'`
    done
else
    opc1=`echo $2 | tr '[a-z]'`
fi
export opc1




# Pede o pg1
if [ $# -lt 3 ]
    then
    while [ -z "$pg1" ]
      do
      echo ""
      echo "Entre com o valor de PG1 EX:127.0.0.1"
      echo "PG1: \c"
      read pg1
      pg1=`echo $pg1| tr '[a-z]'`
    done
else
    pg1=`echo $3 | tr '[a-z]'`
fi
export pg1


# Pede o opc2
if [ $# -lt 4 ]
    then
    while [ -z "$opc2" ]
      do
      echo ""
      echo "Entre com o valor de OPC2 EX:PORTA"
      echo "OPC2: \c"
      read opc2
      opc2=`echo $opc2| tr '[a-z]'`
    done
else
    opc2=`echo $4 | tr '[a-z]'`
fi
export opc2



# Pede a pg2
if [ $# -lt 5 ]
    then
    while [ -z "$pg2" ]
      do
      echo""
      echo "Entre com valor de PG2 EX:3306 "
      echo "PG2: \c"
      read pg2
      pg2=`echo $pg2| tr '[a-z]'`
    done
else
    pg2=`echo $5 | tr '[a-z]'`
fi
export pg2


# Pede o Nome do arquivo
if [ $# -lt 9 ]
    then
    while [ -z "$file" ]
      do
      echo ""
      echo "Digite nome e extensao de seu arquivo EX:rede.properties"
      echo "Arquivo saida: \c"
      read file
      file`echo $file| tr '[a-z]'`
    done
else
    file=`echo $9 | tr '[a-z]'`
fi
export file

cd $patch
echo ""
echo ""
if [ -f $patch/$file  ] 
   then 
      echo
      echo Arquivo $file localizado em $patch
      sleep 5
      echo
      echo Removendo arquivo antigo 
      rm $patch/$file
      sleep 5
      echo
      echo Criando novo arquivo .
      echo
      sleep 5
   else 
      echo
      echo Arquivo $file não encontrado em $patch
           echo
           sleep 5
           echo Criando $file  em $patch
      echo
           sleep 5
        fi 
      
exec 4> $file

   
     

print -u4 
print -u4 '# ********************* ATENCAO *************************** '
print -u4 '#              Arquivo de configuracao                      '
print -u4 '# Descricao da variavel                       '
print -u4 '# Descricao da variavel                      '
print -u4 '#                              '
print -u4 '############################################################'
print -u4 '#----------------------------------------------------------------------------'
print -u4 
print -u4 
print -u4 $opc1=pg1
print -u4 $opc2=pg2
print -u4 



echo
echo Operaçao concluida com sucesso. 
echo
echo

sleep 3
      
echo
exit 0

Scripts recomendados

Backup simples com log de resultado

Barra de progresso em Dialog

O Orbe (RPG)

Nsupdate português

Equacao de Segundo Grau em Dialog


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts