criar nome de variavel em sequencia.

1. criar nome de variavel em sequencia.

paulo sergio de campos filho
paulocapitao

(usa Ubuntu)

Enviado em 10/04/2017 - 19:35h

Boa noite, preciso de ajuda nesse script que esta me enlouquecendo, sou novo no assunto e não acho por pesquisa a informação de que preciso meu problema é o seguinte quero inserir uma informação no script EX: DE e PARA, imaginem uma tabela com duas colunas,como é mais de uma linha por coluna preciso fazer o seguinte:

de P$01 para P$02
de P$02 para P$03

o problema é que não são variaveis atoa, pode ser qualquer numero, o numero vai variar de acordo com a instrução da pessoa, pode ser do 64 ao 31 por exemplo, então tento preciso criar um numero de variaveis conforme a vontade da pessoa, ela não esta limita, ai é que ta o problema, terminando cada linha o script pergunta TERMINOU? se não ele cria outra linha e continua as entradas, como fazer a cada linha digita ele criar um DE com o antigo PARA e aumentar um no nome da variavel para que eu consiga separa as informações no final EX:
de P1=$M64 para P2=$M50
de M50 para p3=$p31
de p31 para p4=$m10.






  


2. Re: criar nome de variavel em sequencia.

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 18/04/2017 - 15:00h

paulocapitao escreveu:

Boa noite, preciso de ajuda nesse script que esta me enlouquecendo, sou novo no assunto e não acho por pesquisa a informação de que preciso meu problema é o seguinte quero inserir uma informação no script EX: DE e PARA, imaginem uma tabela com duas colunas,como é mais de uma linha por coluna preciso fazer o seguinte:

de P$01 para P$02
de P$02 para P$03

o problema é que não são variaveis atoa, pode ser qualquer numero, o numero vai variar de acordo com a instrução da pessoa, pode ser do 64 ao 31 por exemplo, então tento preciso criar um numero de variaveis conforme a vontade da pessoa, ela não esta limita, ai é que ta o problema, terminando cada linha o script pergunta TERMINOU? se não ele cria outra linha e continua as entradas, como fazer a cada linha digita ele criar um DE com o antigo PARA e aumentar um no nome da variavel para que eu consiga separa as informações no final EX:
de P1=$M64 para P2=$M50
de M50 para p3=$p31
de p31 para p4=$m10.


Boa tarde Paulo.
O que "consegui entender" é:
Criar uma tabela com 02 campos/colunas e vários registros.
Essa "VARIÁVEL" que quer criar, será o separador de registros, é isso?
PS.: Coloque um exemplo mais claro, por favor... :)

no aguardo.
Marcelo Oliver






3. Re: criar nome de variavel em sequencia.

paulo sergio de campos filho
paulocapitao

(usa Ubuntu)

Enviado em 18/04/2017 - 15:33h


[/quote]

Boa tarde Paulo.
O que "consegui entender" é:
Criar uma tabela com 02 campos/colunas e vários registros.
Essa "VARIÁVEL" que quer criar, será o separador de registros, é isso?
PS.: Coloque um exemplo mais claro, por favor... :)

no aguardo.
Marcelo Oliver



[/quote]
Boa tarde marcelo, não sei se vai esclarecer mais segue abaixo o script:

#! /bin/bash
#INFORMAÇÃO DE OBJETIVO.
#é muito conplicado para utilizar linux para trabalhos topograficos,este tem o objetivo de criar um arquivo formatado e com os dados devidamente alinhados para ser importado em um software de topografia da METRICA, tendo em vista que o linux não é compativel com softwares de automação topografia este script serviria para que o Software possa estar em somente uma maquina mas ambos os usuarios possam gerar arquivos para encaminhar para ele.

dialog \
--title 'Digitar Matricula por rumo' \
--msgbox 'Este script serve para digitar matriculas por rumo e distancia e gerar um arquivo que possa ser importado no software da Metrica.' \
10 45
clear
#DADOS INICIAS FIXOS.
mat=$(dialog --inputbox "Insira o numero da matricula" 10 45 --stdout)
clear

#AQUI INICIA A TABELA:

# |P{1}=$NOME DO PONTO| P{2}=$NOME DO PONTO |ANG{1}=$ANGULO |DIST{01}=$DISTANCIA|
# |P{1}=$NOME DO PONTO| P{2}=$NOME DO PONTO |ANG{1}=$ANGULO |DIST{01}=$DISTANCIA|
# |P{1}=$NOME DO PONTO| P{2}=$NOME DO PONTO |ANG{1}=$ANGULO |DIST{01}=$DISTANCIA|
# |P{1}=$NOME DO PONTO| P{2}=$NOME DO PONTO |ANG{1}=$ANGULO |DIST{01}=$DISTANCIA|
# |P{1}=$NOME DO PONTO| P{2}=$NOME DO PONTO |ANG{1}=$ANGULO |DIST{01}=$DISTANCIA|
# |P{1}=$NOME DO PONTO| P{2}=$NOME DO PONTO |ANG{1}=$ANGULO |DIST{01}=$DISTANCIA|

declare -r p01=$(dialog --inputbox "digite o nome do ponto" 10 45 --stdout)
declare -r $p02=$(dialog --inputbox "digite o nome do proximo ponto" 10 45 --stdout)
rumo01=$(dialog --inputbox "digite o rumo: ex: 45°5635 SE" 10 45 --stdout)
distancia1=$(dialog --inputbox "digite a distancia" 10 45 --stdout)

#o comando declare foi uma tentativa frustrada:(*
#primeiro loop.

dialog --yesno 'a Matricula Acabou?' 10 45

if [ $? = 0 ]; then
dialog --title "matricula ( $mat )" --texbox " $( readonly $p01 , $p02, $rumo01, $distancia1pa) " 0 0
else
declare -r P02=$(dialog --inputbox "dO $p02 ao ponto: " 10 45 --stdout)
declare -r rumo=$(dialog --inputbox "digite o rumo" 10 45 --stdout)
declare -r dist=$(dialog --inputbox "digite a distancia" 10 45 --stdout) #descobrir como fazer
fi

#exemplo para exportação após finalizado.

#01=RUMO
#02=2
#03=
#04=0.000
#05=0.000
#06=De,Para,Ângulo,Distância
#07=02,03,77.5419 NW,14.32
#07=03,04,86.5914 SW,38.05
#07=04,05,73.4839 SW,32.28
#07=05,06,54.1446 SW,30.81
#07=06,07,73.1803 SW,20.88
#07=07,08,90.0000 SW,12.00
#07=08,09,85.3605 SW,39.12
#07=09,10,22.5556 NW,28,23
#07=10,11,31.4534 NW,24.70
#07=11,12,47.4335 NW,14.87
#07=12,13,11.1836 NW,15.30
#07=13,14,70.0101 NW,11.70
#07=14,15,79.2249 NW,16.28
#07=15,16,41.1109 NW,53.15
#07=16,17,12.0433 NW,425.41
#07=17,18,10.4703 NE,384.80
#07=18,19,43.2707 NE,130.86
#07=19,20,43.5236 NE,108,21
#07=20,21,82.3535 NE,196.77
#07=21,22,3.1251 SE,1128.15

#para finalizar gera um arquivo com a organização da tabela, ainda estudando para ver como proceder.
#possivelmente utilizando comando >$mat.txt.










Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts