Il y a un PowerShell
script nommé itunesForward.ps1
qui fait avancer rapidement iTunes de 30 secondes:
$iTunes = New-Object -ComObject iTunes.Application
if ($iTunes.playerstate -eq 1)
{
$iTunes.PlayerPosition = $iTunes.PlayerPosition + 30
}
Il est exécuté avec la commande de ligne d'invite:
powershell.exe itunesForward.ps1
Est-il possible de passer un argument à partir de la ligne de commande et de le faire appliquer dans le script au lieu d'une valeur codée en dur de 30 secondes?
command-line
powershell
automation
itunes
argument-passing
Boris Pavlović
la source
la source
[string]
. Si vous souhaitez ensuite passer une chaîne en paramètre, vous pouvez utiliser soit'
ou"
. S'il n'y a pas d'espace (ou de guillemets) à l'intérieur de la chaîne, vous pouvez même omettre les guillemets.param([string]$env,[string]$s3BucketName)
-file
est absent de l'appel. L'appel sans pourrait fonctionner avec Powershell version 1.0 mais je ne peux pas le tester. Mis à jour la réponse.Vous pouvez également utiliser une
$args
variable (c'est comme les paramètres de position):alors il peut être appelé comme:
la source
Script d'appel à partir d'un fichier batch (* .bat) ou CMD
Powershell Core
Powershell
Appel de PowerShell
Powershell Core ou Windows Powershell
Script.ps1 - Code de script
la source
laissez Powershell analyser et décider du type de données
utilise en interne une `` variante '' pour cela ...
et fait généralement du bon travail ...
ou si vous devez passer plusieurs paramètres
la source
Créez un script PowerShell avec le code suivant dans le fichier.
Cela crée un script avec un paramètre de chemin. Il listera tous les liens symboliques dans le chemin fourni ainsi que la cible spécifiée du lien symbolique.
la source
Vous pouvez également définir une variable directement dans la ligne de commande PowerShell, puis exécuter le script. La variable y sera également définie. Cela m'a aidé dans un cas où je ne pouvais pas modifier un script signé.
Exemple:
avec iTunesForward.ps1 étant
la source
la source