No necesita poner una lectura en cada línea, simplemente agregue una trampa como la siguiente en su secuencia de comandos bash, que tiene el efecto que desea, por ejemplo.
#!/usr/bin/env bash
set -x
trap read debug
< YOUR CODE HERE >
Funciona, acaba de probarlo con bash v4.2.8 y v3.2.25.
versión mejorada
Si el script está leyendo el contenido de los archivos, la arriba indicada no va a funcionar. Una solución alternativa podría verse como el siguiente ejemplo.
#!/usr/bin/env bash
echo "Press CTRL+C to proceed."
trap "pkill -f 'sleep 1h'" INT
trap "set +x ; sleep 1h ; set -x" DEBUG
< YOUR CODE HERE >
Para detener la secuencia de comandos que tendría que matar desde otro shell en este caso.
ALTERNATIVE1
Si simplemente quiere esperar unos segundos antes de pasar al siguiente comando en el script el siguiente ejemplo podría funcionar para usted.
#!/usr/bin/env bash
trap "set +x; sleep 5; set -x" DEBUG
< YOUR CODE HERE >
Estoy agregando set + x y set -x dentro del comando trap para que la salida sea más legible.
Quizás de manera más amplia consulta https://stackoverflow.com/questions/951336/how-to-debug-a-bash-script/45096876#45096876 – tripleee