Com o GNU sed
(e provavelmente outros), você pode fornecer vários comandos separados por um ponto-e-vírgula:
sed -i 's/\s*$//g; /^$/d'
Outras implementações sed
podem precisar que você forneça os dois comandos separadamente com -e
:
sed -i -e 's/\s*$//g' -e '/^$/d'
Por fim, você também pode combiná-los em um script sed
:
$ cat foo.sed
s/\s*$//g
/^$/d
Em seguida, você o executa com -f
:
$ sed -i -f foo.sed file