Você provavelmente queria usar RANDOM % 90
em vez de &
. É daí que vêm os zeros (a exclusão da linha 1 é OK, na próxima execução, as linhas serão numeradas 1 .. 89).
Há um problema, no entanto: A fórmula pode gerar o mesmo número várias vezes. Para evitar isso, use uma abordagem diferente: embaralhe os números e escolha os dez primeiros:
shuf -i1-90 -n10 | sed 's/$/d/' | sed -f- input > output
Se você não gostar de sed
gerando um script sed
, também poderá usar printf
:
sed -f <( printf %dd\; $(shuf -i1-90 -n10) ) input > output