[read] Comando read - Interação do usuário [RESOLVIDO]

1. [read] Comando read - Interação do usuário [RESOLVIDO]

Mestre De Ubuntu
MestreDUbuntu

(usa Ubuntu)

Enviado em 04/11/2020 - 11:47h

Olá, tudo bem?

Estou criando um script para instalar o Let's Encrypt no servidor, e em determinados momento, é necessário a interação do usuário, para inserir no script o domínio desejado, o usuário FTP, e afins. Sei que o comando read realiza essa captura de informações, porém não tenho ideia de como aplicar isso no script, poderiam me dar exemplos de uso do mesmo, ou de qualquer comando que realize essa função, por gentileza.

Segue a parte principal do script, onde é necessário inserir os dados do cliente. O comando utilizado precisaria perguntar ao usuário qual a informação, e depois capturar a resposta e inserir em todos os campos referentes do script.

Exemplo: Qual o domínio?

Usuário digita: domínio.com.br

E o script captura a informação e insere nos campos a serem executados pelo script, como abaixo:


#Instalar o GitHub na Hospedagem
git clone https://github.com/Neilpang/acme.sh.git &&
# Executar Shell informando o domínio da instalação
sh acme.sh/acme.sh --issue -d dominio.com.br -d www.domnio.com.br -w /home/userftp/public_html/ &&
# Mudar para diretório do certificado
cd .acme.sh/domnio.com.br &&
# Validar arquivos .cer e key
openssl x509 -noout -modulus -in domnio.com.br.cer | openssl md5;openssl rsa -noout -modulus -in domnio.com.br.key | openssl md5 &&


Acredito que o uso do $USER resolveria para o usuário FTP ser inserido no script, porém se puderem me confirmar.

Desde já, agradeço.


  


2. Re: [read] Comando read - Interação do usuário [RESOLVIDO]

leandro peçanha scardua
leandropscardua

(usa Ubuntu)

Enviado em 04/11/2020 - 16:39h

MestreDUbuntu escreveu:

Olá, tudo bem?

Estou criando um script para instalar o Let's Encrypt no servidor, e em determinados momento, é necessário a interação do usuário, para inserir no script o domínio desejado, o usuário FTP, e afins. Sei que o comando read realiza essa captura de informações, porém não tenho ideia de como aplicar isso no script, poderiam me dar exemplos de uso do mesmo, ou de qualquer comando que realize essa função, por gentileza.

Segue a parte principal do script, onde é necessário inserir os dados do cliente. O comando utilizado precisaria perguntar ao usuário qual a informação, e depois capturar a resposta e inserir em todos os campos referentes do script.

Exemplo: Qual o domínio?

Usuário digita: domínio.com.br

E o script captura a informação e insere nos campos a serem executados pelo script, como abaixo:


#Instalar o GitHub na Hospedagem
git clone https://github.com/Neilpang/acme.sh.git &&
# Executar Shell informando o domínio da instalação
sh acme.sh/acme.sh --issue -d dominio.com.br -d www.domnio.com.br -w /home/userftp/public_html/ &&
# Mudar para diretório do certificado
cd .acme.sh/domnio.com.br &&
# Validar arquivos .cer e key
openssl x509 -noout -modulus -in domnio.com.br.cer | openssl md5;openssl rsa -noout -modulus -in domnio.com.br.key | openssl md5 &&


Acredito que o uso do $USER resolveria para o usuário FTP ser inserido no script, porém se puderem me confirmar.

Desde já, agradeço.

Segue um artigo cexemplos de uso do read em linux
https://terminalroot.com.br/2015/08/10-exemplos-do-comando-read.html



3. Re: [read] Comando read - Interação do usuário [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 04/11/2020 - 17:53h


MestreDUbuntu escreveu:

Olá, tudo bem?

Estou criando um script para instalar o Let's Encrypt no servidor, e em determinados momento, é necessário a interação do usuário, para inserir no script o domínio desejado, o usuário FTP, e afins. Sei que o comando read realiza essa captura de informações, porém não tenho ideia de como aplicar isso no script, poderiam me dar exemplos de uso do mesmo, ou de qualquer comando que realize essa função, por gentileza.

Segue a parte principal do script, onde é necessário inserir os dados do cliente.
O comando utilizado precisaria perguntar ao usuário qual a informação, e depois capturar a resposta e inserir em todos os campos referentes do script.

Exemplo: Qual o domínio?

Usuário digita: domínio.com.br

E o script captura a informação e insere nos campos a serem executados pelo script, como abaixo:


#Instalar o GitHub na Hospedagem
git clone https://github.com/Neilpang/acme.sh.git &&
# Executar Shell informando o domínio da instalação
sh acme.sh/acme.sh --issue -d dominio.com.br -d www.domnio.com.br -w /home/userftp/public_html/ &&
# Mudar para diretório do certificado
cd .acme.sh/domnio.com.br &&
# Validar arquivos .cer e key
openssl x509 -noout -modulus -in domnio.com.br.cer | openssl md5;openssl rsa -noout -modulus -in domnio.com.br.key | openssl md5 &&


Acredito que o uso do $USER resolveria para o usuário FTP ser inserido no script, porém se puderem me confirmar.
Desde já, agradeço.

Boa tarde MestreDUbuntu.
Segue:
read -p "Informe o domínio: " dominio
#A resposta do usuário fica armazenada na variável "$dominio"
read -p "Informe o domínio: " dominio
Informe o domínio: abcde.com.br
echo $dominio
abcde.com.br

É isso, qquer duvida, é só perguntar.....


______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/",
Mostrando o seguinte:

Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.


______________________________________________________________________



4. Re: [read] Comando read - Interação do usuário [RESOLVIDO]

Mestre De Ubuntu
MestreDUbuntu

(usa Ubuntu)

Enviado em 06/11/2020 - 14:55h

Olá leandropscardua, boa tarde.

Tive acesso a esse link via pesquisas que realizei. porém não me auxiliou tanto para o meu uso.

Porém agradeço a disposição e informação.

Obrigado.

Segue um artigo cexemplos de uso do read em linux
https://terminalroot.com.br/2015/08/10-exemplos-do-comando-read.html
[/quote]




5. Re: [read] Comando read - Interação do usuário [RESOLVIDO]

Mestre De Ubuntu
MestreDUbuntu

(usa Ubuntu)

Enviado em 06/11/2020 - 15:01h

msoliver escreveu:


MestreDUbuntu escreveu:

Olá, tudo bem?

Estou criando um script para instalar o Let's Encrypt no servidor, e em determinados momento, é necessário a interação do usuário, para inserir no script o domínio desejado, o usuário FTP, e afins. Sei que o comando read realiza essa captura de informações, porém não tenho ideia de como aplicar isso no script, poderiam me dar exemplos de uso do mesmo, ou de qualquer comando que realize essa função, por gentileza.

Segue a parte principal do script, onde é necessário inserir os dados do cliente.
O comando utilizado precisaria perguntar ao usuário qual a informação, e depois capturar a resposta e inserir em todos os campos referentes do script.

Exemplo: Qual o domínio?

Usuário digita: domínio.com.br

E o script captura a informação e insere nos campos a serem executados pelo script, como abaixo:


#Instalar o GitHub na Hospedagem
git clone https://github.com/Neilpang/acme.sh.git &&
# Executar Shell informando o domínio da instalação
sh acme.sh/acme.sh --issue -d dominio.com.br -d www.domnio.com.br -w /home/userftp/public_html/ &&
# Mudar para diretório do certificado
cd .acme.sh/domnio.com.br &&
# Validar arquivos .cer e key
openssl x509 -noout -modulus -in domnio.com.br.cer | openssl md5;openssl rsa -noout -modulus -in domnio.com.br.key | openssl md5 &&


Acredito que o uso do $USER resolveria para o usuário FTP ser inserido no script, porém se puderem me confirmar.
Desde já, agradeço.

Boa tarde MestreDUbuntu.
Segue:
read -p "Informe o domínio: " dominio
#A resposta do usuário fica armazenada na variável "$dominio"
read -p "Informe o domínio: " dominio
Informe o domínio: abcde.com.br
echo $dominio
abcde.com.br

É isso, qquer duvida, é só perguntar.....


______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/",
Mostrando o seguinte:

Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.


______________________________________________________________________



Olá Marcelo, boa tarde.

Realizei alguns testes antes mesmo de postar aqui, porém sem sucesso, utilizei esse mesmo método para pegar o valor da variável.

A variável é até gravada, em caso de uso do echo, o problema é que preciso que seja ajustado a saída do comando, exemplo:


#!/bin/bash
#Instalar o GitHub na Hospedagem
git clone https://github.com/Neilpang/acme.sh.git
#Capturar o domínio para instalação
read -p "Digite o domínio: " domain
sh acme.sh/acme.sh --issue -d '$domain' -d www.'$domain' -w /home/'$userftp'/public_html/


No exemplo abaixo, o comando permaneceu da mesma forma, por mais que já tinha sido capturada a variável no $domain. Utilizei apenas aspas simples para o teste, não sei se diferencia para o caso.

Se puder me orientar se estou errando em algo.

Grato.


6. Re: [read] Comando read - Interação do usuário [RESOLVIDO]

Ameba
Ameba

(usa Debian)

Enviado em 06/11/2020 - 22:06h

mano, essas aspas simples ae que ta ferrando use aspas duplas " "

#!/bin/bash
#Instalar o GitHub na Hospedagem
git clone https://github.com/Neilpang/acme.sh.git
#Capturar o domínio para instalação
read -p "Digite o domínio: " domain
sh acme.sh/acme.sh --issue -d "$domain" -d www."$domain" -w /home/"$userftp"/public_html/



7. Re: [read] Comando read - Interação do usuário [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 07/11/2020 - 15:59h


MestreDUbuntu escreveu:

msoliver escreveu:


MestreDUbuntu escreveu:

Olá, tudo bem?

Estou criando um script para instalar o Let's Encrypt no servidor, e em determinados momento, é necessário a interação do usuário, para inserir no script o domínio desejado, o usuário FTP, e afins. Sei que o comando read realiza essa captura de informações, porém não tenho ideia de como aplicar isso no script, poderiam me dar exemplos de uso do mesmo, ou de qualquer comando que realize essa função, por gentileza.

Segue a parte principal do script, onde é necessário inserir os dados do cliente.
O comando utilizado precisaria perguntar ao usuário qual a informação, e depois capturar a resposta e inserir em todos os campos referentes do script.

Exemplo: Qual o domínio?

Usuário digita: domínio.com.br

E o script captura a informação e insere nos campos a serem executados pelo script, como abaixo:


#Instalar o GitHub na Hospedagem
git clone https://github.com/Neilpang/acme.sh.git &&
# Executar Shell informando o domínio da instalação
sh acme.sh/acme.sh --issue -d dominio.com.br -d www.domnio.com.br -w /home/userftp/public_html/ &&
# Mudar para diretório do certificado
cd .acme.sh/domnio.com.br &&
# Validar arquivos .cer e key
openssl x509 -noout -modulus -in domnio.com.br.cer | openssl md5;openssl rsa -noout -modulus -in domnio.com.br.key | openssl md5 &&


Acredito que o uso do $USER resolveria para o usuário FTP ser inserido no script, porém se puderem me confirmar.
Desde já, agradeço.

Boa tarde MestreDUbuntu.
Segue:
read -p "Informe o domínio: " dominio
#A resposta do usuário fica armazenada na variável "$dominio"
read -p "Informe o domínio: " dominio
Informe o domínio: abcde.com.br
echo $dominio
abcde.com.br

É isso, qquer duvida, é só perguntar.....


______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/",
Mostrando o seguinte:

Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.


______________________________________________________________________



Olá Marcelo, boa tarde.

Realizei alguns testes antes mesmo de postar aqui, porém sem sucesso, utilizei esse mesmo método para pegar o valor da variável.

A variável é até gravada, em caso de uso do echo, o problema é que preciso que seja ajustado a saída do comando, exemplo:


#!/bin/bash
#Instalar o GitHub na Hospedagem
git clone https://github.com/Neilpang/acme.sh.git
#Capturar o domínio para instalação
read -p "Digite o domínio: " domain
sh acme.sh/acme.sh --issue -d '$domain' -d www.'$domain' -w /home/'$userftp'/public_html/


No exemplo abaixo, o comando permaneceu da mesma forma, por mais que já tinha sido capturada a variável no $domain. Utilizei apenas aspas simples para o teste, não sei se diferencia para o caso.

Se puder me orientar se estou errando em algo.

Grato.

Boa tarde.
Errinho básico..... rsrsrsrs
Aspas simples NÃO resolvem a variável....
Exemplo:
dom=VivaoLinux
echo Domínio:'$dom'
Domínio:$dom #Não 'resolveu' a var
echo Domínio: $dom
Domínio: VivaoLinux

sh acme.sh/acme.sh --issue -d ${domain} -d www.${domain} -w /home/${userftp}/public_html/



______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/",
Mostrando o seguinte:

Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.


______________________________________________________________________







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts