첫 번째 문제는 쉘 (PowerShell)을 터미널과 비교한다는 것입니다. Linux에서 터미널은 문자 기반 I / O를 송수신하는 것으로 대화 형 사용자가 있다고 가정합니다 (즉, 셸 을 포함 하는 데 사용되는 GUI 응용 프로그램 임). 우분투 터미널 에서 가장 많이 실행되는 쉘 중 하나 는 Bash 이지만 다른 쉘 도 있습니다.
오프라인 사용자는 Windows PowerShell이 Unix 관리자가 Windows를보다 편안하게 사용하게하려는 시도라고 별다른 설명없이 알려줍니다.
실제로 올바른 말은 PowerShell이 대화식이고 스크립트 가능한 명령 줄 환경에서 WMI , COM 및 .NET 개체 모델의 많은 부분을 노출하는 Windows 이고 파이프 라인과 같은 많은 개념을 계속 빌려 온다는 것입니다. 이전 DOS (2.0 이상) command.com
와 마찬가지로 Unix 쉘에서 I / O 리디렉션 cmd.exe
. 파이프 라인은 PowerShell에서 개체와 함께 작동합니다. 충분히 알고 있다면 HTML 및 Excel 스프레드 시트를 작성하는 등의 작업을 즉시 수행 할 수 있습니다. Windows NT 4.0과cmd.exe
크게 다르지 않은 이전 셸 의 업그레이드 / 교체입니다 .
구문과 관련해서는 Unix 셸과 비슷하지만 (최종의 cmdlet /
은 스위치 또는 매개 변수 표시기로 사용하지 않지만 ) ls
PowerShell 창에 입력 하는 것과 같은 고전적인 Unix 명령에는 많은 별칭 이 있습니다 dir
. 그러나 이들은 별명 일뿐입니다 ( "Get-Alias"에 나열되어 있습니까?).
PowerShell의 기능과 관련하여 VBScript 와 CScript 에서 스크립트 전용 방식으로 비슷한 기능을 실제로 가지고 있었지만 둘 다 이전의 .NET입니다.
대부분의 경우 Bash를 사용할 때 유닉스 사람들이 할 필요가없는 한 가지는 프로그래머 나 객체의 매우 정교한 객체 모델에 친숙하게 익숙해야한다는 것입니다. 이는 많은 고급 및 간단한 PowerShell 작업에 필요합니다. 그러나 이것은 많은 표준 POSIX 명령에 대한 명확한 텍스트 출력 규칙이 있기 때문에 가능 합니다. Windows는 이러한 전통을 가지고 있지 않습니다. mmc
관리 작업을 위해 콘솔을 사용하는 것이 좋으며, 몇 년 동안 여기 저기에 명령이 추가되었습니다. 또한, 많은 잘 알려진 유닉스 유틸리티는 복잡하고 사용하기 전에 몇 가지 연구가 필요 - rsync
, wget
및 많은 다른 사람을. 효율성은 아마도 무엇보다 도구를 얼마나 잘 사용하고 있는지에 대한 함수일 것입니다.