rpm check script problem

Dan Track dan.track at gmail.com
Mon Oct 9 15:11:50 UTC 2006


Hi

I've got a script that should check which rpms are installed on the
system. Part of the script involves using file descriptors. I'm having
trouble understanding these file descriptors and was hoping someone
can clarify my mistake. As a simple script I wrote the following:

#!/bin/bash
$filename=$1
$filename1=$2

exec 9<&0 < $filename
read rpm
echo -e "file1: "$rpm "\c"

exec 8<&0 < $filename1
read rpm1
echo -e "file2: "$rpm1 "\c"

read rpm2 <&9
echo -e "file1: "$rpm2 "\c"

Now my understanding is that the last read and echo statements should
print out what is stored in file descriptor "9" however the script
just hangs on the last read. Is there a reason for this? And how do I
fix it? I've searched and searched but can't find any reason why this
shouldn't work.

Thanks
Dan




More information about the users mailing list