Não há um método interno para que as alterações sejam propagadas automaticamente para processos filhos, os processos podem ser configurados para escutar uma mensagem específica e atualizar, mas para isso é necessário um tratamento especial no aplicativo.
A propagação do ambiente para algumas aplicações é a exceção e não a regra. O comportamento normal é que, quando o processo é criado, ele obtém uma cópia do ambiente do processo pai. Mudanças com o ambiente dentro desse processo não se propagam de volta ao pai. Depois que um processo tiver sido criado, quaisquer outras alterações no ambiente do pai não serão propagadas para o filho.
No Windows, o ambiente em que as variáveis do sistema que você define através dessa interface são armazenadas no registro , para que você possa, teoricamente, escreva um script no cygwin que releria o registro e mostraria as variáveis atuais e, em seguida, usaria isso para atualizar o ambiente no shell atual.
Do link
However, note that modifications to the environment variables do not result in immediate change. For example, if you start another Command Prompt after making the changes, the environment variables will reflect the previous (not the current) values. The changes do not take effect until you log off and then log back on.
To effect these changes without having to log off, broadcast a WM_SETTINGCHANGE message to all windows in the system, so that any interested applications (such as Windows Explorer, Program Manager, Task Manager, Control Panel, and so forth) can perform an update.