Ao executar sudo ls > /root/out.txt
, somente a parte ls
do comando está sendo executada com privilégios elevados. Por causa disso, a parte de redirecionamento do seu comando não tem as permissões necessárias para acessar o local desejado.
Em vez disso, você pode usar tee
prefixado com sudo
da seguinte forma:
ls | sudo tee /root/out.txt