O arquivo Bash não pode ser executado no terminal linux: Socket Programming

0

Eu escrevi alguns códigos para a programação de socket, ou seja, socket e plug. Para executá-los juntos, estou tentando usar o arquivo bash abaixo, mas recebo os seguintes erros.

Eu executei o comando chmod +x run.sh

Quando escrevi echo $TERM , recebi xterm . Mas realmente não ajudou.

Erro: ./run.sh: line 3: xterm: command not found a ./run.sh: line 5: xterm: command not found e assim por diante.

run.sh

#!/bin/bash
#file name: run.sh
xterm -e "./socket"
usleep 100
xterm -e "./plug 5"
xterm -e "./plug 6"
xterm -e "./plug 7"
xterm -e "./plug 8"
xterm -e "./plug 9"
xterm -e "./plug 10"
xterm -e "./plug 11"

Eu até tentei substituir xterm -e por gnome-terminal -x sh -c , mas recebo os mesmos erros (somente gnome-terminal).

    
por user3337714 07.12.2015 / 08:39

1 resposta

1

A variável $TERM pode ser definida como xterm , independentemente de xterm estar instalado.

Você pode verificar se xterm está disponível primeiro usando which xterm . Veja abaixo o exemplo de script:

#!/bin/bash
XTERM=$(which xterm)
FOUND=$?
if [ "$FOUND" -eq "0" ]
then
    $XTERM -e "./socket"
    usleep 100
    $XTERM -e "./plug 5"
else
    echo "XTERM does not exist"
fi

Ou use outro aplicativo de terminal de sua escolha.

    
por 07.12.2015 / 09:02