How do I redirect stdin from a shell script to a command in the shell script?
Question
How do I redirect stdin from a shell script to a command in the shell script? I am trying to pass the stdin to a java System.in stream.
I want to replace
find . -type f | $JAVA_HOME/bin/java com.domain.BatchProcess
with
find . -type f | ./batch.sh
Solution
If the command:
$JAVA_HOME/bin/java com.domain.BatchProcess
is expecting input from stdin, then putting it in a script and running your second command will work.
OTHER TIPS
If you exec the command within the script, it will replace the shell and inherit it's file descriptors, including stdin,stdout and stderr.
It does it automatically.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow