Você teria que fazer algo assim,
#!/bin/sh
file="temp.txt"
read -r vstup
if [ -f "$vstup" ]
then
cat "$vstup"
elif [ "$vstup" = "-" ]
then
while read line
do
# break if the line is empty
[ -z "$line" ] && break
echo "$line" >> "$file"
done
cat $file
rm $file
fi