Błąd pojawia się dlatego, że PowerShell domyślnie ma wyłączoną opcję, wykonywania jakichkolwiek skryptów uruchamianych z zewnętrznych plików, a nie z konsoli.
Aby sprawdzić jak masz ustawione u siebie, musisz użyć komandletu (polecenia) Set-ExecutionPolicy.
Wklejasz w konsoli PowerShell polecenie
Get-ExecutionPolicy
Wyskoczy Ci jakie masz zabezpieczenia restrykcji wykonywania plików ze skryptami.
Są cztery podstawowe parametry (ustawienia polityki wykonania):
Restricted (default) - jest to domyślne ustawienie w PowerShell i umożliwia ono wykonywanie pojedynczych komend za pomocą konsoli, ale żadnych za pomocą skryptów.
AllSigned - umożliwia wykonywanie poleceń z konsoli oraz podpisanych cyfrowo skryptów, jednocześnie pytając się o zgodę na ich wykonanie.
RemoteSigned - umożliwia wykonywanie poleceń z konsoli i skryptów napisanych lokalnie bez ograniczeń. Natomiast od tych pobranych z internetu, wymaga certyfikatu. Nie pyta o zgodę na wykonanie.
Unrestricted - polecenia i wszystkie skrypty wykonywane są bez ograniczeń. jedynie przy tych pobranych z internetu, może wyświetlić się ostrzeżenie o możliwych zagrożeniach.
Jeśli nic nie zmieniałeś, na pewno masz ustawione na Restricted. Więc aby móc odpalić swój plik musisz ustawić na Unrestricted, albo jeśli plik sam lokalnie stworzyłeś na RemoteSigned. Na całkowite zniesienie ograniczeń, radzę uważać ze względu na bezpieczeństwo systemu Windows.
Aby zmienić parametry polityki wykonania, musisz uruchomić konsolę jako administrator (Run as Administrator) i wpisać polecenie:
PS D:\> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
Wyświetli się monit czy przełączyć politykę, wybierz Y[Yes]

Teraz Twój skrypt w pliku .ps1 powinien się prawidłowo uruchomić.