일괄 처 리 를 PowerShell 로 대체 하 세 요!

PowerShell 은 일괄 처리(Cmd.exe 셸 스 크 립 트)의 대체 자가 되 었 을 것 입 니 다.그러나 일부 원인 으로 인해 많은 사람들 이 일괄 처 리 를 포기 하고 싶 어 하지 않 습 니 다.이 글 은 일련의 글 의 시작 으로 일괄 처리 습관 을 깨 고 PowerShell 로 진출 하 는 데 도움 을 줄 것 입 니 다.
이 글 시리즈 에 들 어가 기 전에 일괄 처리 파일 의 역사 와 왜 오래된 스타일 의 일괄 처리 코드 대신 PowerShell 로 스 크 립 트 를 작성 해 야 하 는 지 에 대해 서 좀 이야기 하고 싶 습 니 다.
일괄 처리 파일 의 과거 기록
일괄 처리 파일 은 오 랜 역 사 를 가지 고 있 습 니 다.마이크로컴퓨터 운영 체제 의 CP/M 은 제출 할 수 있 는 명령 을 가지 고 있 습 니 다.텍스트 파일 의 일련의 명령 을 한 줄 씩 실행 할 수 있 습 니 다.그것 은 매우 간단 하 다.
MS-DOS 를 개발 할 때 마이크로소프트 는 command.com 명령 해석 기 에 도 매우 유사 한 일괄 처리 기능 을 포함 시 켰 다.명령 을 텍스트 파일 에 저장 하고.bat 라 는 확장자 라 고 명명 한 다음 명령 해석 기 는 모든 명령 을 실행 할 것 이다.
이후 DOS 버 전에 서 마이크로 소프트 는 여러 방식 으로 일괄 처리 파일 을 확장 했다.태그,GOTO 구문,If 문 구 를 추가 하여 가 지 를 처리 합 니 다.매우 중요 한 점 은'언어'를 일괄 처리 하 는 것 은 디자인 된 것 이 아니다.그것 은 단지 CP/M 에서 태 어 나 명령 을 제출 할 수 있 을 뿐이다.
윈도 NT 와 Cmd.exe
곧 윈도 NT(1993)에 도 착 했 습 니 다.마이크로 소프트 는 콘 솔 모드 의 응용 프로그램 인 Cmd.exe 를 포함 시 켰 습 니 다.이날 에 야 사용자 에 게 바 치 는 전설의'C:프롬프트'를 보 냈 습 니 다.cmd.exe 는 오래된 MS-DOS 의 Command.com 의 초 집합 으로 같은 명령 을 많이 사용 합 니 다.명령 은 사용자 가 오래된 MS-DOS 의 일괄 처리 파일 을 실행 할 수 있 도록 뒤로 호 환 됩 니 다.Cmd.exe 도.bat 확장자 가 있 는'일괄 처리 파일'을 실행 할 수 있 습 니 다.
Cmd.exe 와 Command.com 의 유사 성 은.bat 파일 의 뒤로 호환성 입 니 다.마이크로소프트 가 처음에 선택 한 Cmd.exe 아이콘("MS-DOS"로고)은 사용자 들 을 여러 해 동안 곤 혹 스 럽 게 만 들 었 습 니 다.오늘 도 일부 포럼 커 뮤 니 티 에 서 는'도스 로 무엇 을 하 느 냐'는 질문 도 볼 수 있다.사실상 도스 새 와 관련 된 일이 다.
Cmd.exe 는 Command.com 보다 더 많은 기능 을 가지 고 있 으 며,그 에 상응하는 것 은 일괄 처리 파일 의 확장 이다.그 중에서 For/f 의 교체,간단하게 Call 명령 을 사용 하여 서브루틴,환경의 지정(Setlocal and Endlocal)을 호출 합 니 다.이러한 강화 로 인해'언어'를 더욱 실 용적 으로 처리 하 게 되 었 지만 아직도 많은 결함 이 있 기 때문에 간단 한 일괄 처리 프로그램 을 쓰 는 것 은 골 치 아 픈 일이 되 었 다.
Windows 스 크 립 트 호스트
윈도 2000(1999)부터 마이크로 소프트 는 윈도 스 크 립 트 호스트 두 개의 진정한,내 장 된,프로 그래 밍 가능 한 언어(VBScript 와 JScript 마이크로소프트 버 전의 저 자 바스 크 립 트)를 도입 하여 스 크 립 트 기능 을 강화 했다.WSH 스 크 립 트 는 COM 대상 에 의존 하여 운영 체제 와 응용 프로그램 간 의 상호작용 을 한다.비록 WSH 는 매우 실 용적 이 고 강력 하지만 기계 에 필요 한 COM 대상 을 설치 해 야 하고 명령 행 인터페이스 를 제공 하지 않 았 다.
Windows PowerShell 로 들 어가 기
일괄 처리 와 WSH 스 크 립 트 는 일치 성 을 제공 하지 않 습 니 다.두 가지 분 리 된 증강 도구 이기 때문에 서로 다른 사용자 인 터 페 이 스 를 가지 고 있 습 니 다.마이크로소프트 는 이 를 의식 해 2006 년 윈도 PowerShell 의 첫 번 째 버 전 을 발표 해 열국 혼전 을 끝내 고 윈도 스 크 립 트 의 강 호 를 통일 했다.PowerShell 은.NET 프레임 워 크 를 기반 으로 명령 행 과 윈도 운영 체 제 를 관리 하 는 인 터 페 이 스 를 제공 합 니 다.
현재 우 리 는 Windows PowerShell 을 가지 고 있 습 니 다.구식 일괄 처리 파일(Cmd.exe 셸 스 크 립 트)을 더 이상 작성 할 필요 가 없습니다.미래 를 내다 보 세 요.PowerShell 을 배 우 는 데 신경 을 써 야 합 니 다.주로 마이크로소프트 가 PowerShell 을 Windows 운영 체제 자동화 와 기업 응용 프로그램 관리의 기본 도구 로 정 했 기 때 문 입 니 다.
왜 비준 처 리 를 멈 출 때 가 되 었 습 니까?
일괄 처리 파일 을 쓰 는 것 을 멈 추고 PowerShell 스 크 립 트 로 전환 해 야 하 는 다섯 가지 이 유 를 알려 줍 니 다.
1.PowerShell 은 미래,벤 치 입 니 다.마이크로소프트 는 PowerShell 을 윈도 운영 체제 와 마이크로소프트 기업 응용 프로그램 관리의 기본 도구 로 지정 했다.많은 제3자 공급 업 체 들 도 그들의 제품 을 관리 하기 위해 PowerShell 라 이브 러 리 를 제공 했다.
2.일괄 처 리 는 어렵 고 결함 이 많다.나 는 예전 에 스 크 립 트 가 질문 하 는 사이트 에 자주 갔 었 다.나 는 왜 환경 변수 가 전 개 된 후에 정확 하지 않 고 왜 명령 이 실 행 된 후에 정확 하지 않 은 지 몇 번 이나 물 었 는 지 셀 수 없 었 다.정말 자신 을 cmd.exe 에 소모 할 필요 가 없다.일괄 처리 제한 이 너무 많 으 니 PowerShell 의 품 에 안 겨 주세요!
3.PowerShell 은 일괄 처리 와 명령 행 을 지원 합 니 다.PowerShell 로 전환 하 는 것 은 일괄 처 리 를 포기 한 것 이 아 닙 니 다.구식 일괄 처리 파일 은 PowerShell 에서 잘 실 행 될 수 있 고 명령 행 도구 도 PowerShell 에서 완벽 하 게 호 환 되 어 실 행 됩 니 다.
4.PowerShell 은 진정한 스 크 립 트 프로 그래 밍 언어 입 니 다.PowerShell 의 재 미 를 맛 보지 못 했 을 수도 있 습 니 다.특히 복잡 한 논 리 를 체험 하려 고 할 때 PowerShell 에서 CMD.exe 보다 훨씬 간단 합 니 다.많은 경우 PowerShell 명령 줄 이 수백 수천 개의 일괄 처리 코드 를 대체 할 수 있 습 니 다.
5.PowerShell 은 대상 을 사용 합 니 다.Cmd.exe 와 다른 텍스트 기반 Shell 은 텍스트 명령 으로 만 출력 할 수 있 습 니 다.다른 한편,PowerShell 은.NET 대상 을 사 용 했 습 니 다.과거 일괄 처리 에서 까다 로 웠 던 문제(예 를 들 어 날짜 와 시간의 해석)는 PowerShell 에서 매우 간단 해 졌 습 니 다.
일괄 처리 합 시다.
Cmd.exe 는 단기간 내 에 사라 지지 않 을 것 입 니 다.그러나 우리 가 이 구식 일괄 처리 언어 에 신경 을 쓸 만 한 이유 도 없습니다.그것 을 버 리 고 PowerShell 로 대체 하 세 요!

좋은 웹페이지 즐겨찾기