¿Por qué este script funcionaría con bash en Kali, pero no con bash en Xubuntu?

¿Por qué este script funcionaría con bash en Kali, pero no con bash en Xubuntu?

Tengo un script que hice cuando estaba en casa en una máquina virtual Kali. Funciona perfectamente allí, pero ahora estoy trabajando en mi instalación de Xubuntu y no funciona en absoluto. El shell exacto que estoy usando mediante el comando de ayuda es GNU bash versión 4.2.25. No estoy seguro de qué shell tengo en casa (supongamos que es la última versión). ¿Supongo que el shell que tengo aquí en el trabajo es más antiguo y, por lo tanto, no admite algunas de las cosas que estoy usando en el script? Cuando lo ejecuto aquí, imprime el encabezado y el pie de página, pero nada intermedio. Cualquier ayuda o consejo sería apreciado.

#!/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 ""

Respuesta1

Sus comentarios y líneas en blanco están destruyendo la conectividad de la tubería. Utilizar esta:

#!/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 ""

No necesita una continuación de línea si la tubería está al final de la línea. Si desea sus comentarios, colóquelos en un bloque encima del canal.

información relacionada