2011-05-09 8 views
1

DOS에서 명령을 실행하고 싶습니다. 다른 명령의 출력을 UNIX 나 Linux에서 할 수있는 백코 쿼 (``)을 사용합니다. 예를 들어 DOS에서 명령 출력 사용

, 반환 파일 목록 myCommand 경우, 나는 DOS에서

grep `myCommand` 

어떻게 하나 DOS에 있다고 할 것 UNIX 명령의 일부 아날로그를 실행 하시겠습니까? 도움을 주셔서 감사합니다.

+3

는 "DOS는"하나 "윈도우에서 cmd.exe를"을 의미하여 경우에, 고려 [PowerShell을 (http://en.wikipedia.org/wiki/Windows_PowerShell) 현대적인 대안으로 그 유물에. 마찬가지로 여러 "Unix util"포트 중 하나를 고려하십시오. FWIW, [유닉스 계열 MS-DOS 프로그램] (http://garbo.uwasa.fi/pc/unix.html)과 같은 MS-DOS 용 * 정말 오래된 * 프로그램도 있습니다. –

답변

2

파이프 할 수 있습니다 두 명령 :

command1 | command2 

그러나 입력 whos는 명령의 전체 많이하지가/OUPUT이 서로 잘한다. for 루프를 사용하는 것이 가장 좋을 것입니다. 기본 구문은 다음과 같습니다

for /f %A in ('command1') do command2 %A 
1

%% i in ... 구문을 시도하지 않으면 DOS에 희망이 없습니다. DOS는 Unix가 아닙니다.

다른 해결책은 for 루프 (@ 및 echo 사용)를 사용하여 새 배치를 작성하고 끝에 새 배치를 시작하는 것입니다.

이 작업을 재귀 적으로 수행해야 할 수 있습니다.