Como executar comandos shell em geral e na inicialização

0

Iniciante no Ubuntu 16.4. Tenho dois comandos que precisam ser iniciados quando o computador é iniciado | Comando 1: java -jar ~/folder/abc.jar
Comando2: ~/folder/q/l32/q -p 8712
Ambos os comandos funcionam perfeitamente bem a partir do teminal. Eu criei 2 arquivos bash um com

#!/bin/sh
java -jar ~/folder/abc.jar

outro com

#!/bin/sh
~/folder/q/l32/q -p 8712
  1. Como eu executo esses arquivos bash individualmente? Duplo clique não os executa.
  2. Se eu quiser que esses dois scripts sejam executados na inicialização, o que eu faço? Eu modifiquei o arquivo rc.local e adicionei o caminho desses dois arquivos bash, mas não está funcionando.
por yellow boy 24.03.2017 / 13:26

3 respostas

1

Ok, então finalmente fiz isso. Deixe-me explicar os passos.

Meu arquivo não tinha acesso root./etc/rc.local estava tentando executá-lo e estava falhando. Como o rc.local executa o arquivo no contexto raiz.

Por isso, mudei para crontab, onde posso especificar o arquivo a ser executado em relação a qual usuário

crontab -e -u myusername

Uma vez dentro do arquivo do crobtab eu usei

@reboot /home/username/pathToMyBashFile

Funcionou.

    
por yellow boy 26.03.2017 / 13:37
0

Puxe um terminal e edite seu arquivo de configuração bashrc.

$ vim ~/.bashrc

coloque a linha abaixo no bashrc. press esc, press shift+;, enter :wq para salvar o arquivo.

exec /path/to/file.sh && path/to/path/file2.sh

    
por saviour123 24.03.2017 / 13:35
0

Todos os usuários dos sistemas buntu possuem um arquivo de script de inicialização especial armazenado em seus diretórios de usuário que é lido toda vez que efetuam login no sistema usando o chamado nonlogin ou shell interativo. Todos os comandos listados ali são executados como se tivessem sido digitados literalmente no prompt de comando. Este arquivo é chamado .bashrc ( bash significa bash shell que é o shell padrão usado em todos os sistemas buntu e rc significa configuração de recursos ). Abra esse arquivo usando o editor de texto nano assim:

$ nano ~/.bashrc

Mova o cursor para a parte inferior e coloque seus comandos lá (não exatamente certo para o que você está usando):

java -jar abc.jar
q/l32/q -p 8712

Em seguida, pressione ctrl + O para salvar o arquivo e ctrl + X para sair. Agora, na próxima vez que você inicializar seu computador, todos esses comandos serão executados automaticamente para você.

Sua primeira pergunta:

How do I run these bash files individually?

Você precisa torná-los executáveis:

$ chmod a+x [FILE]

Em seguida, execute-os a partir do comando, especificando apenas seus nomes. Por exemplo, eu tenho o seguinte script (na verdade, existem milhões de maneiras de executar arquivos executáveis na linha de comando):

echo "Hello World!"

Agora, preciso torná-lo executável:

$ chmod a+x script.sh

E agora posso executá-lo:

$ bash ./script.sh
    
por misha 24.03.2017 / 14:14