Ao fazer alterações no seu script, você faz as alterações no disco (disco rígido - o armazenamento permanente); Quando você executa o script, o script é carregado na sua memória (RAM).
Portanto, as alterações que você fizer no script não afetarão o script em execução, ele executará a versão que você executou antes de fazer essas alterações.
No entanto, quando você executa o script alterado novamente sem encerrar a instância em execução anterior, haverá duas instâncias do script - uma com as alterações e a antiga.
Esteja avisado de que os recursos que o script usa e modifica entrarão em conflito. Por exemplo, se você estiver modificando um arquivo usando o script, o script executado posteriormente não poderá abrir esse arquivo para gravação e falhará na execução correta.
Atualizar:
Obrigado ao Usuário Registrado por me indicar uma resposta melhor no Unix.stackexchange.com.
Dependendo do tamanho do script e do compilador / intérprete em questão, o script é carregado parcialmente / completamente. Portanto, se o script não estiver completamente carregado, as alterações que você fizer no script refletirão na instância em execução assim que a parte do script for carregada na memória.
Portanto, não é recomendável alterar seu script no disco que está sendo executado no momento para obter uma saída imprevisível: Primeiro pare a instância em execução, modifique-o e, em seguida, execute-o novamente.