Вы можете перенаправить вывод всего скрипта с помощью exec
.
#! /bin/bash
if [[ $1 = -o ]]
then
exec > "$2"
fi
echo "8.8.8.8"
Теперь, если вы запустите сценарий с помощью -o foo
, вывод будет в файле foo
.
$ ./foo.sh
8.8.8.8
$ ./foo.sh -o bar
$ cat bar
8.8.8.8