반응형
파워셸에서 문(블록)을 사용하여 구현하는 방법은 무엇입니까?
PowerShell에서 사용 블록을 작성하려면 어떻게 해야 합니까?
다음은 C#의 작업 예입니다.
using (var conn = new SqlConnection(connString))
{
Console.WriteLine("InUsing");
}
PowerShell에도 동일한 기능이 필요합니다(작동하지 않음).
Using-Object ($conn = New-Object System.Data.SqlClient.SqlConnection($connString)) {
Write-Warning -Message 'In Using';
}
블록을 사용하지 않고 작동합니다.
$conn = New-Object System.Data.SqlClient.SqlConnection($connString)
도와주셔서 감사합니다.
Using-Object의 솔루션은 다음과 같습니다. 호출을 통해 작동하는 C#의 "사용" 문의 PowerShell 버전.Dispose()
마지막 블록에서:
function Using-Object
{
[CmdletBinding()]
param (
[Parameter(Mandatory = $true)]
[AllowEmptyString()]
[AllowEmptyCollection()]
[AllowNull()]
[Object]
$InputObject,
[Parameter(Mandatory = $true)]
[scriptblock]
$ScriptBlock
)
try
{
. $ScriptBlock
}
finally
{
if ($null -ne $InputObject -and $InputObject -is [System.IDisposable])
{
$InputObject.Dispose()
}
}
}
사용 방법은 다음과 같습니다.
Using-Object ($streamWriter = New-Object System.IO.StreamWriter("$pwd\newfile.txt")) {
$streamWriter.WriteLine('Line written inside Using block.')
}
언급URL : https://stackoverflow.com/questions/42107851/how-to-implement-using-statment-block-in-powershell
반응형
'source' 카테고리의 다른 글
PowerShell의 표준 오류에 쓰는 방법은 무엇입니까? (0) | 2023.07.28 |
---|---|
'root'@'localhost' 사용자에 대한 액세스가 거부되었습니다(암호 사용: 아니요).' (0) | 2023.07.28 |
PowerShell을 사용하여 레지스트리 값과 한 줄로 연결되는 경로를 생성하려면 어떻게 해야 합니까? (0) | 2023.07.28 |
다른 데이터베이스를 사용하는 데이터베이스와 스키마의 차이점은 무엇입니까? (0) | 2023.07.28 |
powershell - powershell(') 새 줄 지정 (0) | 2023.07.28 |