Mewbi
(usa Manjaro Linux)
Enviado em 31/12/2018 - 17:33h
Bem, estou criando um script que realiza um chat entre duas máquinas por meio do netcat e utilizo o comando "mawk" para que o usuário (tanto o que hosteia o chat quanto o que entre nele) tenha um nome. Este funciona da seguinte maneira:
Para criar o chat: mawk -W interactive '$0="<nome-da-pessoa>: "$0' | nc -vlp <porta-de-comunicação>
Para entrar no chat: mawk -W interactive '$0="<nome-da-pessoa>: "$0' | nc <ip-da-pessoa-que-criou-o-chat> <porta-de-comunicação>
Quando o processo é feito digitando o comando direto no terminal o chat funciona normalmente, porém no script gostaria de montar da seguinte maneira:
(vou supor só o usuário que esta conectando)
read -p "Digite o seu nome: " nome
read -p "Digite o IP do host do chat: " ip_host
read -p "Digite a porta do chat: " porta_chat
mawk -W interactive '$0="${nome}: "$0' | nc ${ip_host} ${porta_chat}
Quando realizo o teste o usuário consegue se conectar, porém quando ele manda uma mensagem aparece "${nome}: Ola", ou seja, o comando não interpreta a variável. Tentei diversas formas de resolver isto porém acabou aparecendo outros problemas.
Qualquer ajuda é relevante
(Esta é a primeira vez que pergunto algo no site, peço desculpa por qualquer erro na pergunta)