I\'m trying to run an app (let\'s say top) so it will read from a file for stdin and write to another file from stdout.
Currently I have
Is there a way I can map stdin and stdout to files and use them to control a cli app?
It sounds like you are looking for coprocesses, added to Bash in 4.0.
coproc cat # Start cat in background
echo Hello >&${COPROC[1]} # Say "Hello" to cat
read LINE <&${COPROC[0]} # Read response
echo $LINE # cat replied "Hello"!
Before 4.0 you had to use two named pipes to achieve this.