Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Запуск скрипта из другого не загрязняя переменные (http://forum.oszone.net/showthread.php?t=327074)

Ruzzz 26-05-2017 01:33 2739720

Запуск скрипта из другого не загрязняя переменные
 
1) Нужно запустить скрипт, который "загрязняет" переменные. Правильно ли я понимаю что для этого нужно:
- Запускать другой скрипт как cmd /k dirty.cmd (мне нужно ожидать)
- Или внутри dirty.cmd все обрамлять setlocal ... endlocal и тогда можно как call dirty.cmd
?

Iska 26-05-2017 03:47 2739724

Конечная/глобальная цель сих действий какова? Опишите первичную задачу.

Ruzzz 26-05-2017 13:51 2739830

Iska,
Сделал я такой файл https://github.com/Ruzzz/OneFileTool...cmd/gen_vc.cmd
Его задача генерировать другой cmd файл для компиляции приложения из консоли с помощью Visual C++.
Из множества настроек компиляции я сделал для себя несколько "типовых" конфигураций.
И выбираю их через параметры для gen_vc.cmd
Генерируется например такой файл в итоге https://github.com/Ruzzz/OneFileTool.../zrun_make.cmd

Так вот, второй файл запускает настройку окружения компилятора Visual C++ и далее соответственно компилирует.
В итоге сборка одного или более приложений да еще и в разных конфигурациях может выглядеть так: https://github.com/Ruzzz/OneFileTool...build/zrun.cmd

Т.е. генерация make.cmd файлов - один раз
Каждая перекомпиляция - запуск make.cmd
Сборка множества приложений - это вызов нескольких make.cmd
И вот тут проблемы, пока использую cmd /k *.cmd иначе разные make.cmd (запускает настройку окружения компилятора) конфликтуют друг с другом и сборка происходит с ошибкой.

Не знаю, нужно ли было это все расписывать. Ну раз просили подробней.
Так вот я хочу понять, почему setlocal ... endlocal внутри cmd мне не помагает? Приходиться делать для такого cmd команду cmd /k *.cmd?

greg zakharov 26-05-2017 15:31 2739852

Ruzzz, не проще ли просто написать makefile и скармливать его nmake?

Iska 31-05-2017 05:59 2740930

Ruzzz, спасибо за обстоятельное описание, но это, к сожалению, не помогло понять Вашу мысль, и что именно у Вас не работает. Сделайте простой и наглядный пример.


Время: 18:56.

Время: 18:56.
© OSzone.net 2001-