이것은 질문을 얻을 오히려 자주 그렇게 생각하는 기사를 작성한다. 제목에서 알 수 있듯이 나는 당신이 추가하거나 생성 된 후 PowerShell 배열에 요소를 제거 할 수있는 방법을 보여줍니다.
PowerShell 배열
으로 시작하자 정의 배열로에서 온 PowerShell 문서화:
배열은 데이터 구조로 설계된 컬렉션을 저장하 항목입니다., 항목은 동일한 유형 또는 다른 유형일 수 있습니다.Windows PowerShell3.0 부터 0 또는 하나의 객체 컬렉션에는 배열의 일부 속성이 있습니다.
배열을 만들어서 PowerShell 은 정말 간단하고는 대부분의 아마 이미았다면,예를 들면,목록에서 사용자의 활성 Directory
$adUsers = Get-AdUser -Filter '*' -Server $adDomainController
위의 배열을 반환 AD 체를 포함하는 모든 사용자에 일치하는 사용되는 필터입니다.,
의 과정을 초기화할 수 있습니다면 빈 배열은 다음과 같은 구
$myArray = @()# Specify object type$myArray = @()
위의 초기화면 빈 배열이는 우리가 할 수 있습니다,예를 들어, 으로 채우는 광고를 쿼리하거나 추가 정적 요소는 다음과 같이
$myArray = (1,2,3,4,5)
위니다 추가 요소 1 5 을 보유 객체를 인스턴스화하는 새로운 객체와 함께 길이의 5
PowerShell 추가 요소들을 배열
우리는 우리를 만드는 방법을 참조하십시오 값을 할당 배열 하지만 우리가 원하는 경우 추가하려면 여섯 번째 요소를 보유?, 는 경우 다음을 시도
$myArray.Add(6)
그것이 실패하고 다음과 같은 제외
위의 예외가 발생으로 PowerShell 배열 컬렉션의 크기가 고정되고 오류를 말하는 것,그것이 연장될 수 없습니다.,
중 하나는 일반적 솔루션은 연산자를 사용하여 다음과 같 예를 들어
$myArray += 6# Print array's length$myArray.length6
경우+=를 사용하는 운전자에서 발생 후드
- PowerShell 새로 생성 배열과 같은 요소로 더 새로운 항목
- PowerShell 을 덮어쓰고 기존 배열을 가진 새로운 콘텐츠
이 모든 사용자에게 투명하게 표시되지 않습니다 그래서 당신은 어떤 차이입니다.,
추가 요소들을 배열을 입력 ArrayList
을 방지하려면 모든 복사/이동할 수 있는 데이터 인스턴스를 보유로 ArrayList 은 동적 그리고 당신을 수 있습니다 추가 요소를 제거에서 비행
마찬가지로 당신이 할 수 있는 요소를 제거에서 ArrayList 다음과 같이
# Will corresponding item by index$myArrayList.RemoveAt(1)
참고:제거 방법이 허용 요소의 값 그래서 1 위의 예에서 값을 참조하지 않는 항목의 색인.,
캐스팅을 억제하는 방법을 추가 인쇄하는 새로운 배열의 길이
만들기를 배열을 목록으로 대체 방법
위의 예에서 호출 할 것이다 새로운 방법 개체를 인스턴스화하는 새로운 ArrayList 그러나 이것은 상대적으로 비싼 점에서 컴퓨팅 리소스의 그 위에 다음과 같이 다시 작성할 수 있습니다.
$myArray = @()
되는 외에 짧은 그것의 혜택을 추가 했을 피하고 부정적인 성능의 새로운 객체 코드를 최적화하는 것은 항상 좋은 생각이 다루는 특히 큰 스크립트가 있습니다.,34f072bc0″>
닫 Notes
코드를 작성할 때에도 불구하고,필요하지 않음으로 PowerShell,내가 하려고 항상을 선언합체의 유형으로 도움이 되는 알고에서 주어진 순간 특성 및 방법에 의해 지원체 그래서 나는 항상 곁에 쓰기
$myString = 'Some Text'
아닌
$myString = 'Some Text'
이 필요하지 않습 PowerShell 그러나 나는 그것을 찾는 데 도움이드의 가독성과 작업을 간소화하는 객체를 선언 800/900 선에 코드하지 않고 다시 이동하는 변수 선언입니다.,피>
Leave a Reply