Comment saisir une commande multiligne

Comment saisir une commande multiligne


Source : Stack Overflow [powershell]

Vous pouvez utiliser un espace suivi de l’accent grave (backtick) :

Get-ChildItem -Recurse `
  -Filter *.jpg `
  | Select LastWriteTime

Cependant, cela n’est nécessaire que dans les cas comme celui montré ci-dessus. En général, vous obtenez une continuation de ligne automatique lorsqu’une commande ne peut pas être syntaxiquement complète à ce point. Cela inclut le démarrage d’un nouvel élément de pipeline :

Get-ChildItem |
  Select Name,Length

fonctionnera sans problème puisqu’après le |, la commande ne peut pas être complète car il manque un autre élément de pipeline. L’ouverture d’accolades ou de tout autre type de parenthèses permettra également la continuation de ligne directement :

$x=1..5
$x[
  0,3
] | % {
  "Number: $_"
}

De manière similaire au |, une virgule fonctionnera aussi dans certains contextes :

1,
2

Gardez cependant à l’esprit que, de manière similaire à l’insertion automatique de point-virgule de JavaScript, certaines choses sont cassées de la même façon car le saut de ligne intervient à un point où il est précédé d’une instruction valide :

return
  5

ne fonctionnera pas.

Enfin, les chaînes (sous toutes leurs formes) peuvent également s’étendre au-delà d’une seule ligne :

'Foo
bar'

Elles incluent alors les sauts de ligne dans la chaîne.