Linux – Bash script throws error “read error: 0: Resource temporarily unavailable”

bashlinux

My Script throws the error read error: 0: Resource temporarily unavailable the second time user input ( Unix Username ) is expected.

I suspect this has something to do with the first background process (linux_fetch &) going wrong.

How do I work around this so that the user prompt ( Unix Username ) post the background process does not get affected.

Here is short snippet of the script.

if [ -r $linux_host_list ]
then
    echo
    read -p 'Linux Username:' LUSERNAME
    read -p 'Linux Password:' LPASS
    linux_fetch &
    clear screen
else
    echo "No Linux Servers found"
fi

if [ -r $unix_host_list ]
then
    echo
    read -p 'Unix Username:' UNIXUNAME
    read -p 'Unix Password:' UPASS
    unix_fetch &
    clear screen
else
    echo "No Unix Servers found."
fi

Best Answer

I'll bet that the unix_fetch process is closing or doing something else insane with stdin. Try running unix_fetch with </dev/null, so that it's stdin is redirected away to somewhere it can't do any damage.