Você pode executar o primeiro script em segundo plano assim:
skript1 & skript2
Cada script será executado como um processo separado. Você não pode alterar variáveis no outro script.
Eu quero rodar dois scripts ao mesmo tempo. Como exatamente eu faço isso?
Se eu tiver uma variável chamada foo
in script1
e alterar seu valor para 5, e se eu estiver usando uma variável com o mesmo nome em script2
(que é executado simultaneamente com script1
), o valor da variável foo
em script2
também se torna 5?
Você pode executar o primeiro script em segundo plano assim:
skript1 & skript2
Cada script será executado como um processo separado. Você não pode alterar variáveis no outro script.
Você também pode abrir duas sessões screen
separadas para executar os dois scripts. Por exemplo:
screen -S sampleOne
./runScript.sh
Nesse ponto, você seguraria CTRL + A & D, que sairá da tela sem finalizar e digitará:
screen -S sampleTwo
./runScript2.sh
Uma outra maneira seria usar tmux
para fazer isso também:
tmux new-window -a -n SampleWindows
tmux new-session -d -s SampleWindows -n SSH0 -d
tmux selectp -t SampleWindows
tmux bind-key -n M-Left previous-window -t SampleWindows
tmux bind-key -n M-Right next-window -t SampleWindows
tmux new-window -n sampleOne -t SampleWindows
tmux new-window -n sampleTwo -t SampleWindows
tmux send-keys -t SampleWindows:0 './sampleScript' C-m
tmux send-keys -t SampleWindows:1 './sampleScript2.sh' C-m
tmux attach -t WinSplit
Tags shell scripting parallelism