Executa parte de um comando com sudo [duplicate]

1

Eu quero criar um atalho de teclado Ctrl + Alt + Excluir no meu PC Ubuntu. Deve abrir htop , mas quero máxima prioridade para isso. Eu uso este comando.

xterm -fullscreen -fa 'Monospace' -fs 13 -e htop

Funciona bem, mas quando eu adiciono prioridade, ele precisa de permissões de root

$ nice -n -20 xterm -fullscreen -fa 'Monospace' -fs 13 -e htop
nice: cannot set niceness: Permission denied

Quando eu uso sudo , ele funciona, mas ele executa o comando inteiro como root. Como posso executar apenas nice com sudo ? Seria ideal se não pedisse uma senha.

    
por FK-VH 08.08.2017 / 13:25

1 resposta

1

Você pode usar bom em PIDs existentes com renice

Então, inicie o terminal como de costume

$ sudo renice -n -20 -p HTOP_PID

Se você estiver usando shells / windows diferentes para isso, você pode encontrar o pid ps -A | grep htop , existem várias maneiras de extrair o PID da saída programaticamente, o que permitiria que os scripts lidassem com isso.

Caso contrário, você pode, como sugerido em um comentário, executar

sudo nice -n -20 su USER htop em vez de htop

    
por crasic 14.08.2017 / 01:04