У нас есть файл config.ini (его содержимое будет меняться естественно), изначально в нём нет строчки mac=xxx, т.е. он используется впервые для macshift
В этом случае (если нет mac

Нам нужно выполнить команду start c:/macshift/macshift.exe -i "LocalNet" -r
и записать в этот файл (config.ini) значение нового mac адреса в виде mac=новый мак адрес
Если в файле config.ini уже присутствует строчка mac=zzz
необходимо выполнить команду start c:/macshift/macshift.exe -i "LocalNet" -zzz
и ничего больше никуда не записывать.
Либо другой вариант того же, только гораздо более простой (для меня в том числе)
Имеем два скрипта:
Один записывает случайный mac в каждый из нескольких десятков-сотен файлов c:/configs/*.ini строчкой в виде mac=xxxxxxxxxxxx, причём запись случайного мака необходимо произвести по всем правилам, используемым в macshift (грубо команда -r для проги)
Второй скрипт просто бы брал из файла c:/config.ini строчку mac=zzzzzzzzzzzz и запускал бы команду
start c:/macshift/macshift.exe -i "LocalNet" -zzzzzzzzzzzz