Si expresa su comando sin comillas simples, puede ponerlo dentro de comillas simples y ejecutarlo a través de un shell intermedio.
Para ejecutar esto como root:
echo 'clock_hctosys="YES"' >> /etc/conf.d/hwclock
Escriba el comando de una manera diferente que no use ':
echo clock_hctosys=\"YES\" >> /etc/conf.d/hwclock
Luego invoque sudo sh -c …:
sudo sh -c 'echo clock_hctosys=\"YES\" >> /etc/conf.d/hwclock'
Alternativamente, para escribir la salida en un archivo en el que solo la raíz puede escribir, llame sudo tee. Pase la -aopción a teeanexar al archivo de destino; de lo contrario, el archivo se truncará.
echo 'clock_hctosys="YES"' | sudo tee -a /etc/conf.d/hwclock >/dev/null
Para las modificaciones de archivos más complejos, puede llamar sudo sed, sudo ed, sudo perl, ...
Alternativamente, use un editor decente y haga que llame a sudo. En Emacs, abierto /sudo:/etc/conf.d/hwclock. En Vim, llame :w !sudo tee %para escribir en el archivo abierto como root, o use el complemento sudo.vim . O ve desde el extremo del sudo y llama sudoedit /etc/conf.d/hwclock.
O puede ceder al lado oscuro y ejecutar un shell como root.
$ sudo -i
# echo 'clock_hctosys="YES"' >> /etc/conf.d/hwclock
teecomandos se ejecutan como root, no el comando principal, que podría ser complejo y propenso a un mal comportamiento. (no es el caso deecho)