언젠가 일괄 처리 스크립트 예제로 답을 썼고, 누군가가 파일로 리디렉션 할 때 배치 스크립트에서 에코 로직을 읽는 것이 더 쉽다는 것을 지적했습니다. 파일로 리디렉션 한 다음 명령, 텍스트 등 (아래 예 [1] ).
이 제안은 당신이 이것을하고 싶지 않은 이유를 언급하지 않았으므로 나는 조금 더 깨끗한 것으로 보이는 것들을 유지하기위한 네이티브 메소드를 항상 찾고 있기 때문에 조금 조사하기 시작했습니다.
예일 방식
IF EXIST "%tmpfile%" DEL /Q /F "%tmpfile%" ECHO Some Text Here>>"%tmpfile%" ECHO A little more text here>>"%tmpfile%" ECHO Some other text over here man>>"%tmpfile%" ECHO Can Scooby please have a Scooby snack>>"%tmpfile%"
쉬운 방법을 읽는 예
IF EXIST "%tmpfile%" DEL /Q /F "%tmpfile%" ECHO>>"%tmpfile%" Some Text Here ECHO>>"%tmpfile%" A little more text here ECHO>>"%tmpfile%" Some other text over here man ECHO>>"%tmpfile%" Can Scooby please have a Scooby snack
분명히 많이 있습니다. 더 쉬운 배치 스크립트에서 논리 읽기 ECHO
명령을이 형식으로 사용하지만 일괄 처리 스크립트에서이 방법을 표준으로 사용하는 문제가있는 경우 걱정이 될 수 있습니다.
나는 인터넷에서 주위를 둘러 보았다. 그리고 내가 발견 할 수 있었던 것은 아래에 언급 한 소스 중 하나였다. 다른 리디렉션을 포함하는 명령 줄에서이 기술을 사용하지 마십시오. [2] .
의문
이 질문은 Windows 배치 스크립팅 전문가 또는이 방법을 사용한 적이 있거나 엄격한 테스트를 거친 사람이있을 수 있습니다. . .
- 한 가지 문제 외 (여러 번 리디렉션 [2] )이 구문을 사용하지 않으려면 다른 문제, 이유 또는 문제점을 미리 고려해야합니까?
참고 문헌
리디렉션 [1]
주 : (3)
하나 이상의 파일을 리다이렉션하면 배치 파일을 독서. 때로는 라인을 공백으로 채워 모든 방향 전환 표지판을 만들고 배치 파일을 더 읽기 쉽게 만듭니다.
그러나 ECHO 명령 행으로이 작업을 수행하는 경우, 공백 정말로 에코 드 (ECHOed) 될 것입니다. 가장 작은.
에 마크 스턴의 웹 사이트 나는 훌륭한 솔루션 : 실제로 리디렉션을 실제 명령.
이 가상 파일을 가져 가라. 예를 들면 다음과 같다.
ECHO Directory of all files on C: >> LOG1.LOG
DIR C:\ /S >> LOG1.LOG
눈에는 쉽지 않은데, 그거?
그럼 이건 어때?
>> LOG1.LOG ECHO Directory of all files on C:
>> LOG1.LOG DIR C:\ /S
그것은 정확히 동일하거나 차이가 없습니다! 훨씬 더 좋지, 안 그래? 그러나 이제 다음을 시도해보십시오.
VER | TIME > LOG1.LOG
> LOG1.LOG VER | TIME
두 번째 줄에서 알 수 있듯이 VER의 출력은 다음과 같습니다. LOG1.LOG로 리디렉션됩니다! 엄지 손가락의 규칙으로 : 이것을 사용하지 마십시오. 다른 리디렉션이 포함 된 명령 줄에서
"%tmpfile%"
그것에 쓰는 즉시? 너는 신경 쓸 필요도 없다.echo
님의 :)