Làm cách nào để tôi viết một tập lệnh powershell multiline nội tuyến trong tác vụ Azure Pipelines PowerShell?


8

Lược đồ yaml cho tác vụ Powershell cho phép bạn chọn targetType: 'inline' và xác định tập lệnh trong tập lệnh: input.

Nhưng định dạng chính xác để viết một tập lệnh có nhiều hơn một dòng là gì?

Các tài liệu không chỉ định cách và sử dụng một đường ống trên dòng một (như được chỉ định cho tác vụ Dòng lệnh) không hoạt động.

Câu trả lời:


8

Bạn có thể sử dụng ký tự ống ( Chỉ báo khối vô hướng theo nghĩa đen ) để xác định khối văn bản nhiều dòng với các ký tự dòng mới, chẳng hạn như tập lệnh nội tuyến của bạn; ví dụ như thế này:

- task: PowerShell@2
  inputs:
    targetType: 'inline'
    script: |
      # Write your PowerShell commands here.
      Write-Host "Hello world"
      Write-Host "Hullo clouds"
      Write-Host "Hullo sky"

0

Có thể xâu chuỗi lệnh PowerShell bằng dấu chấm phẩy . Vì vậy, trong thực tế, viết một số lệnh trên một dòng, phân tách bằng dấu chấm phẩy.

(Lưu ý về giới hạn dòng 5000 ký tự trong Azure Pipelines.)


Cảm ơn đã chia sẻ giải pháp, bạn có thể Chấp nhận nó dưới dạng Trả lời, Điều này có thể có lợi cho các thành viên khác trong cộng đồng đọc chủ đề này.
Andy Li-MSFT

0

Có thể chỉ sử dụng tác vụ powershell như thế này:

# Job definition etc
steps:
  - powershell: |
      Write-Host A
      Write-Host B
      Write-Host C
  - task: AzureRmWebAppDeployment@4
      # The rest of this task is omitted.

Nếu bạn sử dụng powershellthay vì task: PowerShell@2loại mục tiêu mặc định inlinevà bạn không cần phải đặt lại.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.