pwsh의 < 파일로부터 입력 수신
아래와 같이 쓰십시오.
# github cliを使ってjsonファイルから
# azureの環境変数を設定する場合
# pwsh では<が使えないのでそれぞれのOSのデフォルトのシェルを呼び出す。
# -eq UnixでLinux系も吸収できてる
if ($PSVersionTable.Platform -eq "Unix") {
/bin/sh -c "gh secret set AZURE_CREDENTIALS --repo $repo < $($principal_json.FullName)"
} else {
# cmd実行用のファイルを作成
New-TemporaryFile | Set-Variable tempfile -Scope local -Option Constant
($tempfile.FullName -replace "\..*$",".bat") | Set-Variable tempbat_path -Scope local -Option Constant
Rename-Item $tempfile.FullName -NewName $tempbat_path
Write-Output "gh secret set AZURE_CREDENTIALS --repo $repo < $($principal_json.FullName)" | Set-Content -Path $tempbat_path
# 下のように必ずWorkingDirectoryを指定すること
# cmdはディレクトリを跨ぐ処理ができないため。
Start-Process $tempbat_path -WorkingDirectory (Get-Location | Select-Object -ExpandProperty Path)
Remove-Item $tempbat_path
}
<을 사용할 수 없기 때문에 Unix, Linux에서/bin/sh에서 <를 사용할 수 있는 조개를 호출합니다Windows에서 cmd를 호출하려면 <을 사용합니다.
의문점
더 쉬워지면 안 돼요?pwsh에 이와 관련된 기능을 추가하기 전에는 아마 안 될 것입니다.
Reference
이 문제에 관하여(pwsh의 < 파일로부터 입력 수신), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/oto/articles/83a5ecc5d727c9텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)