PowerShell과 Windows 명령 프롬프트의 차이점

Windows 7에는 명령 프롬프트보다 강력한 명령 줄 셸 및 스크립팅 언어 인 PowerShell이 ​​추가되었습니다. Windows 7 이후 PowerShell은 Windows 10의 기본 선택이되어 더욱 눈에 띄게되었습니다.

PowerShell은 기존의 명령 프롬프트보다 더 복잡하지만 훨씬 더 강력합니다. 명령 프롬프트는 Linux 및 기타 Unix 계열 시스템에서 사용할 수있는 셸보다 훨씬 열등하지만 PowerShell이 ​​유리하게 경쟁합니다. 또한 대부분의 명령 프롬프트 명령은 기본적으로 또는 별칭을 통해 PowerShell에서 사용할 수 있습니다.

PowerShell과 명령 프롬프트의 차이점

관련 : PowerShell 시작을위한 5 가지 Cmdlet

PowerShell은 실제로 명령 프롬프트와 매우 다릅니다. PowerShell에서는 cmdlet이라고하는 다른 명령을 사용합니다. 레지스트리 관리에서 WMI (Windows Management Instrumentation)에 이르는 많은 시스템 관리 작업은 PowerShell cmdlet을 통해 노출되지만 명령 프롬프트에서는 액세스 할 수 없습니다.

관련 : Geek School : PowerShell에서 개체를 사용하는 방법 배우기

PowerShell은 Linux와 마찬가지로 한 cmdlet의 출력을 다른 cmdlet의 입력으로 전달할 수있는 파이프를 사용합니다. 따라서 여러 cmdlet을 순서대로 사용하여 동일한 데이터를 조작 할 수 있습니다. 문자 (텍스트) 스트림 만 파이프 할 수있는 Unix 계열 시스템과 달리 PowerShell은 cmdlet간에 개체를 파이프합니다. 그리고 cmdlet에서받는 모든 응답을 포함하여 PowerShell의 거의 모든 것이 개체입니다. 이를 통해 PowerShell은 프로그래밍 언어처럼 작동하는 cmdlet간에 더 복잡한 데이터를 공유 할 수 있습니다.

PowerShell은 단순한 셸이 아닙니다. Windows 시스템을 관리하기위한 복잡한 스크립트를 명령 프롬프트로 할 수있는 것보다 훨씬 쉽게 만드는 데 사용할 수있는 강력한 스크립팅 환경입니다.

명령 프롬프트는 기본적으로 Windows에서 전달되는 레거시 환경으로, DOS 시스템에서 찾을 수있는 다양한 DOS 명령을 모두 복사하는 환경입니다. 매우 제한적이며 많은 Windows 시스템 관리 기능에 액세스 할 수 없으며 복잡한 스크립트를 작성하기가 더 어렵습니다. PowerShell은 Windows 시스템 관리자를위한 새로운 환경으로,보다 현대적인 명령 줄 환경을 사용하여 Windows를 관리 할 수 ​​있습니다.

PowerShell을 사용하려는 경우

그렇다면 일반 Windows 사용자는 언제 PowerShell을 사용하고 싶습니까?

관련 : 인터넷 연결 문제를 해결하는 방법

가끔 ping 또는  ipconfig 명령 을 실행하기 위해 명령 프롬프트를 거의 실행  하지 않는 경우에는 실제로 PowerShell을 건드릴 필요가 없습니다. 명령 프롬프트를 사용하는 것이 더 편하다면 아무데도 가지 않을 것입니다. 즉, 이러한 명령의 대부분은 시도하려는 경우 PowerShell에서도 잘 작동합니다.

관련 : Windows에서 여러 파일의 이름을 일괄 적으로 바꾸는 방법

그러나 PowerShell은 명령 프롬프트보다 훨씬 더 강력한 명령 줄 환경이 될 수 있습니다. 예를 들어 Windows에 내장 된 PowerShell 환경을 사용하여 검색 및 바꾸기 작업을 수행하여 일반적으로 타사 프로그램을 설치해야하는 폴더에있는 여러 파일의 이름을 일괄 적으로 바꾸는 방법을 살펴 보았습니다. 이것은 Linux 사용자가 항상 명령 줄 환경에서 수행 할 수 있었던 일이지만 Windows 사용자는 제외되었습니다.

그러나 PowerShell은 Linux 터미널과 다릅니다. 좀 더 복잡하고 일반 Windows 사용자는이를 사용하여 많은 이점을 보지 못할 수 있습니다.

시스템 관리자는 시스템을보다 효율적으로 관리 할 수 ​​있도록 PowerShell을 배우기를 원할 것입니다. 다양한 시스템 관리 작업을 자동화하는 스크립트를 작성해야하는 경우 PowerShell을 사용하여 수행해야합니다.

공통 명령에 해당하는 PowerShell

대부분의 일반적인 명령 프롬프트 명령-에서  ipconfig 에  cd 파워 쉘 환경에서 -work. 이는 PowerShell에 이전 명령을 입력 할 때 새 cmdlet을 실행하는 적절한 새 cmdlet에서 이러한 이전 명령을 가리키는 "별칭"이 포함되어 있기 때문입니다.

어쨌든 PowerShell의 구문이 어떻게 다른지에 대한 아이디어를 제공하기 위해 몇 가지 일반적인 명령 프롬프트 명령과 PowerShell의 동등한 명령에 대해 살펴 보겠습니다.

디렉토리 변경

  • DOS :  cd
  • PowerShell :  Set-Location

디렉토리에 파일 나열

  • DOS :  dir
  • PowerShell :  Get-ChildItem

파일 이름 바꾸기

  • DOS :  rename
  • PowerShell :  Rename-Item

DOS 명령에 별칭이 있는지 확인하려면 Get-Alias cmdlet을 사용할 수 있습니다  . 예를 들어 입력   Get-Alias cd 하면 cd 실제로  cmdlet을 실행하고 있음을 알 수 있습니다   .  Set-Location

더 알아보기

관련 : Geek School : PowerShell을 사용하여 Windows를 자동화하는 방법 알아보기

PowerShell에 대해 자세히 알고 싶으십니까? PowerShell을 소개하고 속도를 익히는 데 도움이되는 Geek School 기사 시리즈를 읽어보세요. Windows 시스템 관리자라면이 내용을 알아야합니다.