개발관련/other

Windows의 명령 줄에서 빈 파일을 만드는 방법

Rateye 2021. 12. 16. 09:35
728x90
반응형
질문 : Windows의 명령 줄에서 빈 파일을 어떻게 만들 수 있습니까?

DOS / Windows 명령 줄에서 어떻게 빈 파일을 만들 수 있습니까?

나는 시도했다 :

copy nul > file.txt

그러나 항상 파일이 복사되었음을 표시합니다.

표준 cmd에 다른 방법이 있습니까?

Cygwin의 touch 명령이나 기타 비표준 명령이 필요하지 않은 방법이어야합니다. 명령은 스크립트에서 실행해야하므로 키 입력을 사용할 수 없습니다.

답변

리디렉션하지 않고, 루크 데자뷰 또는 에릭 Konstantopoulos는 지적 밖으로 합니다 :

copy NUL EMptyFile.txt
copy /b NUL EmptyFile.txt

" 배치 파일에서 빈 텍스트 파일을 만드는 방법은 무엇입니까? "(2008)도 다음을 가리 킵니다.

type NUL > EmptyFile.txt
# also
echo. 2>EmptyFile.txt
copy nul file.txt > nul # also in qid's answer below
REM. > empty.file
fsutil file createnew file.cmd 0 # to create a file on a mapped drive

Nomad원본을 언급합니다.

C:\Users\VonC\prog\tests>aaaa > empty_file
'aaaa' is not recognized as an internal or external command, operable program or batch file.

C:\Users\VonC\prog\tests>dir

 Folder C:\Users\VonC\prog\tests
 
 27/11/2013  10:40    <REP>          .
 27/11/2013  10:40    <REP>          ..
 27/11/2013  10:40                 0 empty_file

같은 정신으로 Samuel의견에서 다음과 같이 제안합니다.

내가 사용하는 가장 짧은 것은 기본적으로 Nomad의 것입니다.

.>out.txt

오류가 발생합니다.

'.' is not recognized as an internal or external command

그러나이 오류는 stderr에 있습니다. 그리고 > 는 아무것도 생성되지 않은 stdout 만 리디렉션합니다.
따라서 빈 파일이 생성됩니다.
여기서 오류 메시지는 무시할 수 있습니다. 또는 Rain답변 에서와 같이 NUL 리디렉션되었습니다.

.>out.txt 2>NUL

(원래 답변, 2009 년 11 월)

echo.>filename

( echo "" 는 실제로 ""를 파일에 넣습니다! 그리고 '.'가없는 echo Command ECHO activated "를 파일에 넣습니다 ...)

참고 : 결과 파일은 비어 있지 않지만 리턴 라인 시퀀스 (2 바이트)를 포함합니다.


논의 는 실제 빈 파일에 대한 진정한 배치 솔루션을 가리 킵니다.

 <nul (set/p z=) >filename

 dir filename
 11/09/2009  19:45                 0 filename
 1 file(s)                         0 bytes

" <nul set/p nul 응답을 파이프하여 사용 된 변수를 변경되지 않은 상태로 유지합니다. set/p 에서 평소와 같이 등호 오른쪽의 문자열은 CRLF가없는 프롬프트로 표시됩니다.

여기서 "등호 오른쪽의 문자열"이 비어 있기 때문에 결과는 빈 파일입니다.


cd. > filename 와의 차이점. cd. > filename (Patrick Cuff의 답변에 언급되었으며 0 바이트 길이의 파일도 생성 함)은이 "비트 리디렉션"( <nul... 트릭)을 사용하여 CR없이 라인 을 에코 할 수 있다는 것입니다.

<nul (set/p z=hello) >out.txt
<nul (set/p z= world!) >>out.txt
dir out.txt

dir 명령은 파일 크기를 11 바이트로 표시해야합니다 : " helloworld! ".

출처 : https://stackoverflow.com/questions/1702762/how-can-i-create-an-empty-file-at-the-command-line-in-windows
728x90
반응형