2014년 4월 29일 화요일

윈도우 배치 split 명령어

윈도우 커맨드로 원하는 결과 값만 결과값을 나타내기

예를 들어 dir 명령어를 치면 다음과 같이 나온다.

2014-02-21 오후 11:13 <DIR> Contacts
2014-04-26 오후 02:04 <DIR> Desktop
2014-04-29 오전 09:57 <DIR> Documents
2014-04-29 오후 01:05 <DIR> Downloads

여기서 해당 날짜와 시간만 구하고 싶을 때는 다음과 같이 적어 넣는다.
for /f "tokens=1,2,3 delims= " %i in ('dir') do @echo %i %j %k

출력결과 :

2014-04-09 오전 09:42
2014-04-08 오후 06:15
2014-04-08 오후 09:03
2014-03-21 오전 08:57
2014-03-20 오후 04:47
2014-03-20 오후 04:30

사용법은 delims로 나눌 기준을 구한다. 위에서는  (공백)으로 처리 했다.

tokens는 delims로 나눴을 때 몇번째 값을 출력할 지를 설정.

위에서는 1,2,3 을 설정했으므로 공백 기준 첫번째는 '날짜'이고, 다음은 '오후',  세번째는 '시간' 되겠다.

('dir') 부분은 명령어를 나타내고, %i %j %k는 토큰에서 지정된 값을 출력하는 변수이다.

출처는 여기

댓글 없음:

댓글 쓰기