Jednym z miłych aspektów programu PowerShell jest to, że moduły są bardzo przenośne i można je ładować na wiele różnych sposobów. Daje nam to możliwość ładowania zarówno modułów zainstalowanych w systemie, jak i modułów w innych lokalizacjach. Możemy również ładować moduły z udziałów Server Message Block (SMB), a także z sieci Web. Dlaczego możliwość ładowania z tych zdalnych lokalizacji jest tak cenna? Chcemy pozostawić jak najmniej śladów i chcemy powielać jak najmniej pracy. Oznacza to, że możemy pozostawić elementy, których będziemy często używać, w udziale SMB lub nawet w witrynie, a następnie odwoływać się do nich z tego miejsca. Ponieważ skrypt jest tylko tekstem, nie musimy martwić się o bloki dla plików binarnych lub podobnych typów plików. Możemy również zaciemniać kod, a następnie dekodować go w locie, co potencjalnie ułatwia omijanie kontroli bezpieczeństwa. Ponieważ skrypt jest tylko tekstem, możemy go uwzględnić niemal wszędzie. Często witryny z kodem, takie jak GitHub, są przydatne do tego typu działań, ponieważ takie witryny mają wiele celów związanych z biznesem. Możemy uwzględnić nasze skrypty w repozytorium lub jako podstawowe polecenia gist, które ładujemy z naszego środowiska PowerShell, aby uruchomić inne działania. PowerShell może nawet używać ustawień proxy użytkownika, więc jest to świetny sposób na ustanowienie trwałości w środowisku.