Windows 셸 스크립팅에 사용할 수 있는 도구와 언어는 무엇입니까?
문제
Windows 플랫폼에서 일부 스크립팅 작업을 수행하는 옵션이 무엇인지 알고 싶습니다.파일 조작, 레지스트리 편집 등과 같은 기능이 필요합니다.스크립팅 도구를 사용하여 파일을 편집할 수 있습니까?Windows 스크립팅 도구는 어떤 다른 기능을 제공합니까?Windows GUI를 사용하여 수행할 수 있는 모든 작업을 스크립팅 언어를 사용하여 수행할 수 있습니까?
해결책
Microsoft의 Windows PowerShell 이 최신 버전이라고 생각합니다.이런 종류의 것에 가장 좋아합니다.
다른 팁
버전 2.0의 프리 릴리즈를 살펴 보는 것이 좋습니다.많은 부분이 변경되었습니다.
http://blogs.msdn.com/powershell/archive/2007/11/06/what-s-new-in-ctp-of-powershell-2-0.aspx
배치 파일은 이식성이 가장 높지만 복잡한 작업을 수행하는 것은 어려울 수 있습니다 (매우 어렵습니다).
Powershell은 엄청나게 강력하지만 현재 설치된 도메인은 자신이 관리하는 powershell 및 서버 사용을 좋아하는 사람들보다 약간 더 많습니다.스크립팅중인 컴퓨터를 제어하고 powershell 설치를 지시 할 수있는 경우 powershell을 사용할 수 있습니다.그렇지 않으면 배치 파일이 가장 좋은 방법입니다.
Powershell을 사용하면 할 수있는 모든 작업을 수행 할 수 있지만 일부 작업은 다른 작업보다 어려울 수 있습니다. :)
(진지하게, 스크립트에서 Windows GUI 앱을 제어하려는 경우 앱이 자체적으로 스크립팅을 지원하지 않는 한 많은 고통을 겪을 것입니다. 또는 대화 컨트롤에 메시지를 게시하고성공 여부를 확인하는 대화 상자)
"Take Command"( JPSoft )를 추천합니다.PowerShell.우리는 ESSS에서 수년간 사용합니다.
PowerShell 도 살펴보세요.
CScript?그런 걸 본 기억이나요.
Powershell은 훌륭하지만 설치해야 할 추가 사항이 있습니다.거의 모든 Windows 설치에서 표준이 아닙니다.따라서 자신이 직접 사용하는 경우에는 powershell이 좋습니다.예를 들어, 생산 중인 소프트웨어의 일부로 일반 대중의 컴퓨터에서 스크립트를 실행해야 하는 경우 이것이 최선의 선택이 아닐 수도 있습니다.
추가로 설치해야 할 사항이 있으면 cygwin을 확인해 보세요.이를 통해 전체 Linux bash 명령줄과 모든 관련 도구를 마음대로 사용할 수 있습니다.
기본 Windows 설치에 포함된 항목이 필요한 경우.Windows 명령줄(cmd.exe)이 있습니다.일부 기능이 있지만 Linux에서 사용할 수 있는 기능에 비해 매우 부족합니다.아마도 더 나쁜 또 다른 문제는 문서화할 수 있는 방법이 많지 않다는 것입니다.
VB Script(flameaway)에도 관심이 있을 수 있습니다.VB 스크립트는 거의 모든 최신 표준 Windows 설치에서 작동하며 명령줄보다 훨씬 더 기능적입니다.
cygwin이 설치되어 있으므로 자동화 요구 사항에 맞게 bash 쉘 스크립트를 실행할 수 있습니다.게다가 Windows에서 기본적으로 실행되는 항목이 더 필요하면 batch + jscript의 조합을 사용합니다 (Visual Studio.Net이 설치된 경우 cmdline에서 실행되며 "cscript XXX.js"를 호출하면됩니다).
스크립팅은 대단합니다.
개인적으로 저는 사악한 작은 배치 파일을 작성하는 것을 좋아합니다. 거의 모든 작업을 수행 할 수있는 명령 줄 프로그램을 찾을 수 있습니다. 저는 배치 파일을 선호합니다. 왜냐하면 그것들은 몇 가지 유닉스 도구 (SSED, GREP, GAWK)를 사용하여 최대 zip으로 한 시스템에서 다른 시스템으로 이식 가능하기 때문입니다. 레지스트리 변경 및 읽기도 수행 할 수있는 명령 줄 REG.Exe가 있습니다. "FOR / f"루프를 사용하여 명령의 출력을 구문 분석 할 수 있습니다.
PowerShell에는 더 많은 기능이 있습니다 ... err .. Power (2 번째 게시물에 작성했지만 어쩔 수 없습니다.)
창 자동화를보고 싶다면 AutoHotKey 를 확인하세요.
무엇을 자동화하려고합니까? 도움이 될만한 범위를 좁히는 데 도움이 될 수 있습니다.
- 조시
편집 : @jameso와 동시에 입력 한 기록을 위해 직장에서 누군가 나에게 질문을하지 않았다면 내가 그 앞에 게시했을 수 있습니다. 그래도 게시물의 유사성에 약간 떨 렸습니다 ....
Powershell은 필요한 작업을 수행 할 수 있습니다. <인용구>
파일 조작
이 SO 게시물 은 텍스트 파일에서 문자열을 대체 할 수있는 방법에 대한 답변입니다.쉽게 참조 할 수 있도록 여기에 붙여 넣으세요.
(Get-Content c:\temp\test.txt).replace('[MYID]', 'MyValue') | Set-Content c:\temp\test.txt
파일 및 폴더 복사와 같이 할 수있는 다른 작업이 있습니다. Windows Powershell 문서 <인용구>
레지스트리 편집
Powershell을 사용하여 쉽게 수행 할 수 있습니다.다음은 의 샘플 코드입니다.Microsoft Dev 블로그 :
Set-ItemProperty -Path HKCU:\Software\hsg -Name newproperty -Value anewvalue
어제이 문제를 수리 할 수있었습니다.) <인용구>
모든 도구 / 언어는 무엇입니까? Windows 쉘 스크립팅?
다음과 같이 더 잘 읽을 것 <인용구>
사용 가능한 도구 및 언어 Windows 쉘 스크립팅을 위해?