como reiniciar o script a partir de um ponto especifico [RESOLVIDO]

1. como reiniciar o script a partir de um ponto especifico [RESOLVIDO]

Lucas Moraes
lucasdemoraesc

(usa Ubuntu)

Enviado em 13/08/2017 - 14:53h

Olá.
Estou com o seguinte script:
OBS: Ele está cortado pois é muito grande
#!/bin/bash

max() {
clear
echo
echo -------------------------------------------------------------------------------
echo "Escolha uma das opções:"
echo
echo "1. Pós Instalação --> para instalar alguns programas em seu sistema!"
echo "2. Limpar Sistema --> executar algumas tarefas de limpeza!"
echo "3. Atualizar sistema --> atualizar sistema e seus softwares!"
echo "4. Sair"
echo
echo -n ">"
read opcao
case $opcao in
1) pos ;;
2) clean ;;
3) up ;;
4) sair ;;
esac
}

pos() {
[...]
}

clean() {
clear
echo "Preaparando para Limpar..."
echo -------------------------------------------------------------------------------
[...]
}

up() {
clear
echo
echo "Preparando para atualizar..."
echo -------------------------------------------------------------------------------
[...]
}

sair() {
clear
exit
}

max


Aí quero que quando ele terminar de executar alguma das opções (a que o usuário escolher) ele volte para o inicio de novo.



  


2. MELHOR RESPOSTA

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 13/08/2017 - 15:19h

correalinux escreveu:

Olá.
Estou com o seguinte script:
OBS: Ele está cortado pois é muito grande
#!/bin/bash

max() {
clear
echo
echo -------------------------------------------------------------------------------
echo "Escolha uma das opções:"
echo
echo "1. Pós Instalação --> para instalar alguns programas em seu sistema!"
echo "2. Limpar Sistema --> executar algumas tarefas de limpeza!"
echo "3. Atualizar sistema --> atualizar sistema e seus softwares!"
echo "4. Sair"
echo
echo -n ">"
read opcao
case $opcao in
1) pos ;;
2) clean ;;
3) up ;;
4) sair ;;
esac
}

pos() {
[...]
}

clean() {
clear
echo "Preaparando para Limpar..."
echo -------------------------------------------------------------------------------
[...]
}

up() {
clear
echo
echo "Preparando para atualizar..."
echo -------------------------------------------------------------------------------
[...]
}

sair() {
clear
exit
}

max


Aí quero que quando ele terminar de executar alguma das opções (a que o usuário escolher) ele volte para o inicio de novo.


Boa tarde.
Ao termino de cada função, coloque o "max".
Exemplo:
#!/bin/bash

max() {
clear
echo
echo -------------------------------------------------------------------------------
echo "Escolha uma das opções:"
echo
echo "1. Pós Instalação --> para instalar alguns programas em seu sistema!"
echo "2. Limpar Sistema --> executar algumas tarefas de limpeza!"
echo "3. Atualizar sistema --> atualizar sistema e seus softwares!"
echo "4. Sair"
echo
echo -n ">"
read opcao
case $opcao in
1) pos ;;
2) clean ;;
3) up ;;
4) sair ;;
esac
}

pos() {
[...]
max
}

clean() {
clear
echo "Preaparando para Limpar..."
echo -------------------------------------------------------------------------------
[...]
max
}

up() {
clear
echo
echo "Preparando para atualizar..."
echo -------------------------------------------------------------------------------
[...]
max
}

sair() {
clear
exit
}
max


Att.:
Marcelo Oliver


3. Re: como reiniciar o script a partir de um ponto especifico [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 13/08/2017 - 15:01h

Poderia adicionar o codigo em um While, pois que quando chegue ao final, ele pergunta ao usuario e se terminar e preciso so colocar o break, caso não, só colocar de novo no while... Essa e a ideia mais facil...


Meu github:
#===============================#
# https://github.com/Python-Library-Work #
#===============================#
O universo e um infinito de possibilidades!!!



4. Re: como reiniciar o script a partir de um ponto especifico [RESOLVIDO]

Lucas Moraes
lucasdemoraesc

(usa Ubuntu)

Enviado em 13/08/2017 - 15:16h

AndrewUser escreveu:

Poderia adicionar o codigo em um While, pois que quando chegue ao final, ele pergunta ao usuario e se terminar e preciso so colocar o break, caso não, só colocar de novo no while... Essa e a ideia mais facil...


Meu github:
#===============================#
# https://github.com/Python-Library-Work #
#===============================#
O universo e um infinito de possibilidades!!!



Obg.
Vou ver se condigo colocar aqui.

Mas agora preciso de outra ajuda.
Um comando para fazer com que o then não faça nada.
Tipo:
Se for assim então continuar ou avançar ou não fazer nada.
ex:
#!/bin/bash
if [ xx = yy ]
then
não fazer nada
else
echo sucess



LMC


5. Re: como reiniciar o script a partir de um ponto especifico [RESOLVIDO]

Lucas Moraes
lucasdemoraesc

(usa Ubuntu)

Enviado em 13/08/2017 - 15:28h

msoliver escreveu:

correalinux escreveu:

Olá.
Estou com o seguinte script:
OBS: Ele está cortado pois é muito grande
#!/bin/bash

max() {
clear
echo
echo -------------------------------------------------------------------------------
echo "Escolha uma das opções:"
echo
echo "1. Pós Instalação --> para instalar alguns programas em seu sistema!"
echo "2. Limpar Sistema --> executar algumas tarefas de limpeza!"
echo "3. Atualizar sistema --> atualizar sistema e seus softwares!"
echo "4. Sair"
echo
echo -n ">"
read opcao
case $opcao in
1) pos ;;
2) clean ;;
3) up ;;
4) sair ;;
esac
}

pos() {
[...]
}

clean() {
clear
echo "Preaparando para Limpar..."
echo -------------------------------------------------------------------------------
[...]
}

up() {
clear
echo
echo "Preparando para atualizar..."
echo -------------------------------------------------------------------------------
[...]
}

sair() {
clear
exit
}

max


Aí quero que quando ele terminar de executar alguma das opções (a que o usuário escolher) ele volte para o inicio de novo.


Boa tarde.
Ao termino de cada função, coloque o "max".
Exemplo:
#!/bin/bash

max() {
clear
echo
echo -------------------------------------------------------------------------------
echo "Escolha uma das opções:"
echo
echo "1. Pós Instalação --> para instalar alguns programas em seu sistema!"
echo "2. Limpar Sistema --> executar algumas tarefas de limpeza!"
echo "3. Atualizar sistema --> atualizar sistema e seus softwares!"
echo "4. Sair"
echo
echo -n ">"
read opcao
case $opcao in
1) pos ;;
2) clean ;;
3) up ;;
4) sair ;;
esac
}

pos() {
[...]
max
}

clean() {
clear
echo "Preaparando para Limpar..."
echo -------------------------------------------------------------------------------
[...]
max
}

up() {
clear
echo
echo "Preparando para atualizar..."
echo -------------------------------------------------------------------------------
[...]
max
}

sair() {
clear
exit
}
max


Att.:
Marcelo Oliver



Muito obrigado cara funcionou muito bem.
VLW...



LMC


6. Re: como reiniciar o script a partir de um ponto especifico [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 13/08/2017 - 17:24h

correalinux escreveu:

msoliver escreveu:

correalinux escreveu:

Olá.
Estou com o seguinte script:
OBS: Ele está cortado pois é muito grande
#!/bin/bash

max() {
clear
echo
echo -------------------------------------------------------------------------------
echo "Escolha uma das opções:"
echo
echo "1. Pós Instalação --> para instalar alguns programas em seu sistema!"
echo "2. Limpar Sistema --> executar algumas tarefas de limpeza!"
echo "3. Atualizar sistema --> atualizar sistema e seus softwares!"
echo "4. Sair"
echo
echo -n ">"
read opcao
case $opcao in
1) pos ;;
2) clean ;;
3) up ;;
4) sair ;;
esac
}

pos() {
[...]
}

clean() {
clear
echo "Preaparando para Limpar..."
echo -------------------------------------------------------------------------------
[...]
}

up() {
clear
echo
echo "Preparando para atualizar..."
echo -------------------------------------------------------------------------------
[...]
}

sair() {
clear
exit
}

max


Aí quero que quando ele terminar de executar alguma das opções (a que o usuário escolher) ele volte para o inicio de novo.


Boa tarde.
Ao termino de cada função, coloque o "max".
Exemplo:
#!/bin/bash

max() {
clear
echo
echo -------------------------------------------------------------------------------
echo "Escolha uma das opções:"
echo
echo "1. Pós Instalação --> para instalar alguns programas em seu sistema!"
echo "2. Limpar Sistema --> executar algumas tarefas de limpeza!"
echo "3. Atualizar sistema --> atualizar sistema e seus softwares!"
echo "4. Sair"
echo
echo -n ">"
read opcao
case $opcao in
1) pos ;;
2) clean ;;
3) up ;;
4) sair ;;
esac
}

pos() {
[...]
max
}

clean() {
clear
echo "Preaparando para Limpar..."
echo -------------------------------------------------------------------------------
[...]
max
}

up() {
clear
echo
echo "Preparando para atualizar..."
echo -------------------------------------------------------------------------------
[...]
max
}

sair() {
clear
exit
}
max


Att.:
Marcelo Oliver



Muito obrigado cara funcionou muito bem.
VLW...
LMC

Por nada Correa.
Agradeço a avaliação. :)

Quanto ao seu outro problema:
#!/bin/bash
if [ xx -eq yy ]; then
não fazer nada
else
echo sucess
fi

É só inverter a condição:

#!/bin/bash
if [ xx -ne yy ]; then
echo sucess
fi

Obs: Se os dados forem numéricos, use da forma acima, caso sejam "strings", faça da forma que vc apresentou.
Uma outra opção, é usar o condicional da forma reduzida :
Exemplo:
Dados numéricos:
((5==5)) && echo "é igual" || echo "não é igual"
((5==5)) || echo "não é igual"
Dados não numéricos:
STRING01="AAA"
STRING02="BBB"
[ $STRING01 == $STRING02 ] && echo "é igual" || echo "não é igual"
[ $STRING01 == $STRING02 ] || echo "não é igual"

Att.:
Marcelo Oliver






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts