Como faço para que um script seja executado automaticamente quando faço login? Não quando a máquina é inicializada e não para todos os usuários, mas apenas quando eu (ou qualquer usuário específico com o script) efetuo login através da interface do usuário do GNOME.
De ler em outro lugar, pensei que estava .bash_profile
no meu diretório pessoal, mas para mim não tem efeito. Quando eu o executo manualmente em uma janela de terminal, digitando ~/.bash_profile
ele funciona, mas ele não será executado automaticamente quando eu fizer login.
Estou executando o Ubuntu 11.04. A permissão de arquivo no meu .bash_profile é -rwx------
. Nenhum .bash_profile existia no meu diretório pessoal antes de eu o criar hoje.
Parece que me lembro de versões anteriores do Linux com um .profile
arquivo para cada usuário, mas isso também não funciona.
Como isso é feito? Preciso configurar outra coisa para que o .bash_profile funcione? Ou o script de login por usuário precisa estar em outro arquivo?
fonte
Respostas:
Você pode simplesmente adicionar o seguinte comando em Sistema> Preferências> Aplicativos de Inicialização:
Isso deve fazer o truque;)
fonte
/etc/xdg/autostart
bash /home/myusername/scriptname
"Aplicativos de inicialização" funcionou! Obrigado. No entanto, isso pode ser específico para o GNOME no Ubuntu, é por isso que eu estava pensando sobre onde as entradas no item de menu "Aplicativos de Inicialização" são registradas, pois seria mais provável que seja semelhante em outras versões modernas do Linux./etc/xdg/autostart
parece ser um arquivo de todo o sistema, não específico para um usuário.Então, basicamente, como sugeriu o nodiscc , crie um iniciador de área de trabalho: ~ / .config / autostart / script.desktop com o seguinte conteúdo:
Em seguida, crie o script de inicialização automática: ~ / bin / autostart com o seu conteúdo do bash:
Certifique-se de que ~ / bin / autostart seja executável
fonte
Você pode adicionar uma linha no crontab -
Em seguida, adicione esta linha ao arquivo que se abre:
Isso executará o script na reinicialização. Para mais detalhes, consulte
man crontab
fonte
Tente
~/.xinitrc
(algumas informações aqui: https://wiki.archlinux.org/index.php/Xinitrc ). Lembre-se de que qualquer coisa iniciada neste script deve ser iniciada / executada em segundo plano, ou pode interferir no login do X.fonte
Estendendo a resposta @JuanSebastianTotero .
Ao invés de:
Experimentar
bash
não funcionou para mim no Ubuntu13.04
e14.04
. Massh
faz.fonte