Por que esse script funcionaria com o bash no Kali, mas não com o bash no Xubuntu?

Por que esse script funcionaria com o bash no Kali, mas não com o bash no Xubuntu?

Tenho um script que fiz quando estava em casa em uma máquina virtual Kali. Funciona perfeitamente lá, mas agora estou trabalhando na instalação do Xubuntu e não está funcionando de jeito nenhum. O shell exato que estou usando por meio do comando help é o GNU bash versão 4.2.25. Não tenho certeza de qual shell tenho em casa (suponha que seja a versão mais recente). Presumo que o shell que tenho aqui no trabalho seja mais antigo e, portanto, não suporta algumas das coisas que estou usando no script. Quando executo aqui, ele imprime o cabeçalho e o rodapé, mas nada entre eles. Qualquer ajuda ou conselho seria bem-vindo.

#!/bin/bash

echo ""
echo "######## WHOIS: "$1

# Whois using the inputted parameter
whois $1 |\

# Remove EOL characters
tr -d '\015\032' |\

# Remove spaces
sed 's/^ *//' |\

# Remove unnecessary words from output
grep -v -e "@" -e "http://" -e "WHOIS" > temp.txt

# Display all of the date lines
egrep -i "ate: " temp.txt

# Remove the tmp file
rm -rf temp.txt

echo "------- DONE!"
echo ""

Responder1

Seus comentários e linhas em branco estão destruindo a conectividade do canal. Usa isto:

#!/bin/bash

echo ""
echo "######## WHOIS: "$1

whois $1 |
tr -d '\015\032' |
sed 's/^ *//' |
grep -v -e "@" -e "http://" -e "WHOIS" |
egrep -i "ate: " 

echo "------- DONE!"
echo ""

Você não precisa de uma continuação de linha se o tubo estiver no final da linha. Se você quiser seus comentários, coloque-os em um bloco acima do pipeline.

informação relacionada