Es gibt ein PowerShell
Skript mit dem Namen itunesForward.ps1
, mit dem iTunes 30 Sekunden vorspulen kann:
$iTunes = New-Object -ComObject iTunes.Application
if ($iTunes.playerstate -eq 1)
{
$iTunes.PlayerPosition = $iTunes.PlayerPosition + 30
}
Es wird mit dem Befehl prompt line ausgeführt:
powershell.exe itunesForward.ps1
Ist es möglich, ein Argument über die Befehlszeile zu übergeben und es im Skript anstelle des fest codierten 30-Sekunden-Werts anzuwenden?
command-line
powershell
automation
itunes
argument-passing
Boris Pavlović
quelle
quelle
[string]
. Wenn Sie dann eine Zeichenfolge als Parameter übergeben möchten, können Sie entweder'
oder verwenden"
. Wenn in der Zeichenfolge kein Leerzeichen (oder Anführungszeichen) vorhanden ist, können Sie die Anführungszeichen sogar weglassen.param([string]$env,[string]$s3BucketName)
-file
fehlt im Anruf. Der Anruf ohne funktioniert möglicherweise mit Powershell Version 1.0, aber ich kann ihn nicht testen. Die Antwort wurde aktualisiert.Sie können auch
$args
Variablen verwenden (das entspricht Positionsparametern):dann kann es wie folgt aufgerufen werden:
quelle
Rufen Sie das Skript aus der Batch-Datei (* .bat) oder CMD auf
Powershell Core
Power Shell
Anruf von Powershell
Powershell Core oder Windows Powershell
Script.ps1 - Skriptcode
quelle
Lassen Sie Powershell den Datentyp analysieren und entscheiden.
Verwendet intern eine 'Variante' dafür ...
und macht im Allgemeinen einen guten Job ...
oder wenn Sie mehrere Parameter übergeben müssen
quelle
Erstellen Sie ein Powershell-Skript mit dem folgenden Code in der Datei.
Dadurch wird ein Skript mit einem Pfadparameter erstellt. Es werden alle symbolischen Links innerhalb des angegebenen Pfads sowie das angegebene Ziel des symbolischen Links aufgelistet.
quelle
Sie können eine Variable auch direkt in der PowerShell-Befehlszeile definieren und dann das Skript ausführen. Dort wird auch die Variable definiert. Dies hat mir in einem Fall geholfen, in dem ich ein signiertes Skript nicht ändern konnte.
Beispiel:
mit iTunesForward.ps1 ist
quelle
quelle