WinFuture-Forum.de: Hilfe zu Powershell-Script von http://winfuture.de/news,101369.html - WinFuture-Forum.de

Zum Inhalt wechseln

Windows 10: Alle News, der Download sowie zahlreiche Screenshots und Videos zum neuen Betriebssystem von Microsoft. Jetzt im WinFuture Windows 10 - Special informieren!
  • 2 Seiten +
  • 1
  • 2

Hilfe zu Powershell-Script von http://winfuture.de/news,101369.html


#1 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 04. Januar 2018 - 20:20

Sobald ich Install-Module SpeculationControl eingebe, kommt:

Zitat

Install-Module : Die Benennung "Install-Module" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei
oder eines ausführbaren Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist
(sofern enthalten), und wiederholen Sie den Vorgang.
In Zeile:1 Zeichen:1
+ Install-Module SpeculationControl
+ ~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Install-Module:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException


Jemand eine Idee?

$ExecutionContext.SessionState.LanguageMode ergibt übrigens
ConstrainedLanguage
falls das eine Rolle spielt

Dieser Beitrag wurde von d4rkn3ss4ev3r bearbeitet: 04. Januar 2018 - 20:21

0

Anzeige



#2 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.794
  • Beigetreten: 19. August 04
  • Reputation: 1.434
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 04. Januar 2018 - 20:56

Windows 10? Dann sollte eigentlich mind. PS 5.0 installiert sein und da wiederum sollte das Modul 'PowershellGet' installiert sein, welches das Cmdlet 'Install-Module' bereit stellt.

Was ist denn die Ausgabe von?

$psversiontable

und

Get-Module PackageManagement | % { $_.ExportedCommands.Values }

Sollte mind. Version 5.0 angezeigt werden und in der Liste der Cmdlets sollte 'Install-Module' stehen.

Ansonsten, hast Du irgendetwas an den Einstellungen geändert? Pfad gelöscht oder so?

Was passiert denn, wenn Du Import-Module -Name PackageManagement eingibst?
Ich bin kein Toilettenpapier-Hamster.
---
Ich bin ein kleiner, schnickeldischnuckeliger Tiger aus dem Schwarzwald.
Alle haben mich ganz dolle lila lieb.
0

#3 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 04. Januar 2018 - 21:05

Beitrag anzeigenZitat (DK2000: 04. Januar 2018 - 20:56)

Windows 10?

Jo. Version 1709. 64Bit

Beitrag anzeigenZitat (DK2000: 04. Januar 2018 - 20:56)

$psversiontable

Name Value
---- -----
PSVersion 5.1.16299.98
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.16299.98
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1

Beitrag anzeigenZitat (DK2000: 04. Januar 2018 - 20:56)

Get-Module PackageManagement | % { $_.ExportedCommands.Values }

Zeigt nix

Beitrag anzeigenZitat (DK2000: 04. Januar 2018 - 20:56)

Was passiert denn, wenn Du Import-Module -Name PackageManagement eingibst?

Auch nix. Aber nach dem erneuten Aufruf von dem Get-Modul kommt dann das:
CommandType Name Version Source
----------- ---- ------- ------
Cmdlet Find-Package 1.0.0.1 PackageManagement
Cmdlet Find-PackageProvider 1.0.0.1 PackageManagement
Cmdlet Get-Package 1.0.0.1 PackageManagement
Cmdlet Get-PackageProvider 1.0.0.1 PackageManagement
Cmdlet Get-PackageSource 1.0.0.1 PackageManagement
Cmdlet Import-PackageProvider 1.0.0.1 PackageManagement
Cmdlet Install-Package 1.0.0.1 PackageManagement
Cmdlet Install-PackageProvider 1.0.0.1 PackageManagement
Cmdlet Register-PackageSource 1.0.0.1 PackageManagement
Cmdlet Save-Package 1.0.0.1 PackageManagement
Cmdlet Set-PackageSource 1.0.0.1 PackageManagement
Cmdlet Uninstall-Package 1.0.0.1 PackageManagement
Cmdlet Unregister-PackageSource 1.0.0.1 PackageManagement

Möglich das es wegem dem Upgrade von Win7 ist?
0

#4 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.794
  • Beigetreten: 19. August 04
  • Reputation: 1.434
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 04. Januar 2018 - 21:09

Mh? Gute Frage. Wenn 'Get-Modul' jetzt die erwartete Ausgabe liefert, dann war das Modul 'PackageManagement' nicht geladen. Jetzt sollte 'Install-Modules' laufen, jedenfalls in der Sitzung.

Kann sein, dass es mit Windows 7 zusammen hängt. Ich habe hier eine Neuinstallation der 1709. Da wird das standardmäßig importiert. Warum das bei Dir nicht der Fall ist, kann ich Dir gerade auch nicht sagen.
Ich bin kein Toilettenpapier-Hamster.
---
Ich bin ein kleiner, schnickeldischnuckeliger Tiger aus dem Schwarzwald.
Alle haben mich ganz dolle lila lieb.
0

#5 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 04. Januar 2018 - 21:18

Hast du bei dir Powershell 2.0 installiert? Zufinden in der alten Systemsteuerung:
[attachment=50367:systemsteuerung.png]

Edit: Die Module von oben sind nach einem Neustart wieder raus.

Dieser Beitrag wurde von d4rkn3ss4ev3r bearbeitet: 04. Januar 2018 - 21:21

0

#6 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.794
  • Beigetreten: 19. August 04
  • Reputation: 1.434
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 04. Januar 2018 - 21:33

Tatsächlich. Powershell 2.0 ist da bei mir alles angehakt, also installiert.

Habe ich noch gar nicht darauf geachtet, dass das da existiert.

Und ja, Import-Module läuft nur über die gerade aktive Sitzung.

Aber normaler Weise ist die Powershell v5.1 so eingestellt, dass Module bei der ersten Benutzung automatisch geladen werden ($PSModuleAutoLoadingPreference="All").
Ich bin kein Toilettenpapier-Hamster.
---
Ich bin ein kleiner, schnickeldischnuckeliger Tiger aus dem Schwarzwald.
Alle haben mich ganz dolle lila lieb.
0

#7 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 04. Januar 2018 - 21:39

PS hat sich da manchmal ein wenig affig. Hab ich in der ganzen Zeit auch noch nicht rausgekriegt, woran es genau hängt. Das kann sogar soweit gehen, daß PS einem sagt, ja, ich hab das cmdlet gefunden, aber ausführen tu ich das nicht, weil das Modul nicht geladen ist.

OBWOHL standardmäßig Module automatisch geladen werden, wenn Bedarf danach besteht.

Aber ansonsten, ja, Import-Module ... vorher erspart einem jede Menge Streß.

PS - äh, also PS wie Post Scriptum, nicht wie PowerShell :blush: :

-- Version 2 hat damit nicht viel zu tun. Kann man theoretisch deaktivieren, wenn man nicht grad noch alte Module hat, die das erfordern. Insbesondere sind das die, für die es nur .NET v2-Module gibt und insbesondere keine entsprechenden aus .NET v4.


PPS. Falls danach Bedarf besteht: Man kann mit
If(Test-Path $Profile -eq $false){ New-Item -ItemType File -Path $Profile -Force}; Start PowerShell_ISE $Profile
die Profildatei für PowerShell in den Editor laden (ist standardmäßig noch nicht da). Hier kann man dann Befehle reintun, die bei jedem Start der PowerShell unter diesem Benutzerkonto ausgeführt werden. Die PS ExecutionPolicy muß dazu die Ausführung von Scripts erlauben.

Dieser Beitrag wurde von RalphS bearbeitet: 04. Januar 2018 - 21:43

"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#8 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.794
  • Beigetreten: 19. August 04
  • Reputation: 1.434
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 04. Januar 2018 - 21:49

Wenn ich diese Zeile da für das Profil eingebe, erscheint folgendes:

Test-Path : Es wurde kein Parameter gefunden, der dem Parameternamen "eq" entspricht.
In Zeile:1 Zeichen:23
+ If(Test-Path $Profile -eq $false){ New-Item -ItemType File -Path $Pro ...
+                       ~~~
    + CategoryInfo          : InvalidArgument: (:) [Test-Path], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.TestPathCommand

Seltsam.
Ich bin kein Toilettenpapier-Hamster.
---
Ich bin ein kleiner, schnickeldischnuckeliger Tiger aus dem Schwarzwald.
Alle haben mich ganz dolle lila lieb.
0

#9 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 04. Januar 2018 - 21:56

:lol: Sorry, mein Fehler. PS, der Klammerwald. :huh:


So muß es da heißen:

If((Test-Path $Profile) -eq $false) { ... }

Das -EQ ist schließlich der Vergleichsoperator, kein Parameter zu Test-Path.
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#10 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.794
  • Beigetreten: 19. August 04
  • Reputation: 1.434
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 04. Januar 2018 - 22:01

Ja, stimmt. Bin wohl auch schon zu müde heute. Jetzt passt es.

Aber wie auch immer, was da bei d4rkn3ss4ev3r los ist, kann ich da im Moment immer noch nicht sagen. Da muss irgend etwas verstellt sein.
Ich bin kein Toilettenpapier-Hamster.
---
Ich bin ein kleiner, schnickeldischnuckeliger Tiger aus dem Schwarzwald.
Alle haben mich ganz dolle lila lieb.
0

#11 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 04. Januar 2018 - 22:26

Es tut ja (lese ich zumindest raus), wenn man PackageManagement importiert. Das ist zwar ein bissel doof, folgt aber den allgemeinen Empfehlungen von Microsoft, daß man erstmal Import-Module sagen soll.

"Normal" muß man das ja auch nicht laden. Braucht man ja nur, wenn man Module nachinstallieren will -- also fremde, keine eigenen, meine ich.

Außerdem gibt es da noch in der PSGallery eine neuere Version des PackageManagement-Moduls. Wobei ich grad nicht sicher bin, ob man das braucht oder nicht. Bei mir hat sich das ein bißchen gebissen, weil hier noch unter $PSHOME im Modulverzeichnis ein PackageManagement rumfliegt und PS beim Laden irgendwie ins Stottern kommt, was den jetzt von wo geholt werden soll.

Aber, eh, ich mein, solange wie ein Find-Module XYZ|Install-Module -Scope CurrentUser tut, ist der Rest glaub ich overkill. Besonders wenn man sonst eh nix mit PS oder dessen Modulen macht. Hauptsache am Ende läuft das CPU-Vernichterscript.
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#12 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 04. Januar 2018 - 22:26

Ich befürchte die Technet Antwort zu einem ähnlichen Powershell Problem ist die Lösung:

Zitat

This can happen at times when you upgrade a previous OS and use a pre-release upgrade.

I recommend that you do a full restore of Win 10 and test before adding any other components.


Wie funktioniert denn der Restore bei 10 inzwischen? Sind Einstellungen und Co dann weg oder ist es ein InPlace Upgrade wie bei 7 wo einfach Windows über Windows gebügelt wird und alles bleibt erhalten?


Edit: Bei einem anderen PC hier im Netzwerk wo auch Win10 von 7 geupgraded wurde, ging alles problemlos.
Dort sind die Befehle in Powershell auch farbig markiert, bei mir nicht.

Dieser Beitrag wurde von d4rkn3ss4ev3r bearbeitet: 04. Januar 2018 - 22:41

0

#13 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 05. Januar 2018 - 13:24

Ich habe probeweise mal https://github.com/P...rShell/releases installiert und siehe da, es geht.
Allerdings scheinbar nicht komplett, was eventuell aber an meiner alten CPU liegt? (Intel® Core™2 Quad Q9550)


Zitat

Speculation control settings for CVE-2017-5715 [branch target injection]

Hardware support for branch target injection mitigation is present: False
Windows OS support for branch target injection mitigation is present: False
Windows OS support for branch target injection mitigation is enabled: False

Speculation control settings for CVE-2017-5754 [rogue data cache load]

Get-WmiObject : The term 'Get-WmiObject' is not recognized as the name of a cmdlet, function, script file, or operable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At C:\Program Files\PowerShell\Modules\SpeculationControl\1.0.1\SpeculationControl.psm1:122 char:16
+ $cpu = Get-WmiObject Win32_Processor
+ ~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Get-WmiObject:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

0

#14 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.794
  • Beigetreten: 19. August 04
  • Reputation: 1.434
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 05. Januar 2018 - 15:47

Beitrag anzeigenZitat (d4rkn3ss4ev3r: 04. Januar 2018 - 22:26)

Wie funktioniert denn der Restore bei 10 inzwischen? Sind Einstellungen und Co dann weg oder ist es ein InPlace Upgrade wie bei 7 wo einfach Windows über Windows gebügelt wird und alles bleibt erhalten?

Das ist irgendwas dazwischen. Einige Fehler konnte ich damit nicht reparieren, außer ich habe die Option 'Alles löschen' gewählt. Dann endete das quasi in einer Neuinstallation. Wenn man aber Einstellungen und Apps übernimmt, können auch defekte Einstellungen übernommen werden. Das weiß man vorher nicht so genau. Deswegen hatte ich ja mal das System komplett neu installiert, um mich komplett von Insider Releases zu trennen. Ab und zu scheinen da seltsame Nebeneffekte aufzutreten, wenn man von Pre-Release auf Release wechselt.

Wenn Du jetzt schon öfters ein Upgrade durchgeführt hast, dann dürfte ein Inplace Upgrade auch nicht viel helfen. Der Fehler mit der Powershell wird anscheinen immer übernommen.

Bin jetzt aber auch noch nicht dahinter gekommen, ob man die Powershell nicht an sich zurücksetzen kann.

Beitrag anzeigenZitat (d4rkn3ss4ev3r: 05. Januar 2018 - 13:24)

Allerdings scheinbar nicht komplett, was eventuell aber an meiner alten CPU liegt? (Intel® Core™2 Quad Q9550)

Das liegt nicht an der CPU. Das liegt erneut an der Powershell:

Get-WmiObject : The term 'Get-WmiObject' is not recognized as the name of a cmdlet, function, script file, or operable program.

Hier wird 'Get-WmiObject' nicht erkannt. Das gehört lt. Doku zum Modul 'Microsoft.PowerShell.Management'. Eventuell ist das nicht geladen.
Ich bin kein Toilettenpapier-Hamster.
---
Ich bin ein kleiner, schnickeldischnuckeliger Tiger aus dem Schwarzwald.
Alle haben mich ganz dolle lila lieb.
0

#15 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 05. Januar 2018 - 18:08

Durchgeführt wurde bisher nur ein Upgrade. Von 7 zu 10 aber ich vermute das Powershell-Updates und Upgrades unter Win7 meine Probleme verursachen.

Powershell zurück setzen (via DISM?) wäre natürlich super.
Ansonsten muss ich dann das InPlace Upgrade testen oder irgentwann 10 komplett frisch aufsetzen, wobei mir das dafür nicht wichtig genug ist.
0

Thema verteilen:


  • 2 Seiten +
  • 1
  • 2

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0