POSIXly:
for arg do
shift
[ "$arg" = "-inf" ] && continue
set -- "$@" "$arg"
done
printf '%s\n' "$@"
O código acima funciona até em shells pré-POSIX, exceto o shell original Almquist (Leia Endnote ). Altere o loop for
para:
for arg
do
...
done
garanta o trabalho em todas as conchas.
Outro POSIX 1:
for arg do
shift
case $arg in
(-inf) : ;;
(*) set -- "$@" "$arg" ;;
esac
done
Com este, você precisa remover o primeiro (
em (pattern)
para fazê-lo funcionar em shells pré-POSIX.