PowerShell, çevresel değişkenleri yönetme kapasitesinden daha fazla olduğundan PowerShell'de her iki komutu da çalıştırmalısınız.
yani:
$dow = (get-date).dayofweek
[Environment]::SetEnvironmentVariable("DOW", $dow, "Machine")
veya
[Environment]::SetEnvironmentVariable("DOW", $dow, "User")
Bu arada, betiğiniz çalışmaz çünkü elde ettiğiniz tek şey PowerShell dönüş kodudur, ürettiği veri değil. Çalışmasını sağlamanın bir yolu olabilir, ancak sonuçta sadece uygun bir PowerShell betiği kullanmaktan çok anlamsız.
Tamamlanması için, Microsoft'tan PowerShell ve çevresel değişkenler hakkında güzel bir makale:
Ortam Değişkenleri Yaratma ve Değiştirme
Güncelleme: Bu çözümü sohbette @ syneticon-dj ile birlikte inceledikten sonra, bu yöntemi kullanırken karşılaştığınız sorun, harici değişkenlerde meydana gelen değişiklikleri yansıtmadan önce bir komut isteminin yeniden yüklenmesi gerektiğidir.
Ne yaptığınız hakkında fazla ayrıntı vermediniz, ancak PowerShell'i başlatmanızın tek sebebi buysa, gerçek önerim işleri nasıl yaptığınızı gözden geçirmekten daha fazla olacaktır.
Tüm işleminiz PowerShell kullanarak mı yoksa bunun yerine zamanlanmış görevleri kullanmayı düşündünüz mü? Haftanın gününe göre görevleri zamanlayabilirsiniz.