[windows] Windows에 / dev / null이 있습니까?

/dev/nullWindows 에서 이에 해당하는 것은 무엇입니까 ?



답변

NUL적어도 명령 프롬프트 또는 배치 파일 내에서 원한다고 생각 합니다.

예를 들면 다음과 같습니다.

type c:\autoexec.bat > NUL

파일을 만들지 않습니다.

(내가 생각 프로그래밍 파일을 만들려고하면 동일 사실이지만, 나는 그것을 시도하지 않았습니다.)

PowerShell에서 원하는 것은 $null다음과 같습니다.

echo 1 > $null


답변

GCC 메일 링리스트 의이 메시지에 따르면 / dev / null 대신 “nul”파일을 사용할 수 있습니다.

#include <stdio.h>

int main ()
{
    FILE* outfile = fopen ("/dev/null", "w");
    if (outfile == NULL)
    {
        fputs ("could not open '/dev/null'", stderr);
    }
    outfile = fopen ("nul", "w");
    if (outfile == NULL)
    {
        fputs ("could not open 'nul'", stderr);
    }

    return 0;
}

( 이 코드에 대해 Danny 에게 감사의 말 을 전하고 메시지에서 복사하여 붙여 넣습니다.)

리디렉션을 통해이 특수 “널”파일을 사용할 수도 있습니다.


답변

NULWindows에서 실제로는 모든 폴더의 가상 경로 인 것 같습니다. 마찬가지로 .., .어떤 파일 시스템에.

NUL이 뒤 따르는 폴더를 사용하십시오.

예,

echo 1 > nul
echo 1 > c:\nul
echo 1 > c:\users\nul
echo 1 > c:\windows\nul

/dev/null리눅스 에서와 같은 효과가 있습니다.

이것은 Windows 7, 64 비트에서 테스트되었습니다.


답변

Jon Skeet이 맞습니다. Windows Embedded 설명서 의 Nul Device Driver 페이지 는 다음과 같습니다 (왜 다른 곳에 있지 않은지 모르겠습니다 …).

여기 또 다른 것이 있습니다 :


답변

NUL프로그래밍 방식으로도 작동합니다. 예를 들면 다음과 같습니다.

freopen("NUL", "w", stderr);

파일을 만들지 않고 예상대로 작동합니다. (MSVC ++ 12.0)


답변

Microsoft Windows /dev/null에서 Linux에서 와 동일한 심볼릭 링크를 수행 해야하는 경우 관리자를 열고 cmd입력하십시오.

파일의 경우 :

mklink c:\path\to\file.ext NUL:

또는 디렉토리의 경우 :

mklink /D c:\path\to\dir NUL:

이렇게하면 파일 / 디렉토리가 항상 0 바이트로 유지되고 모든 쓰기 시도에 성공을 계속합니다.


답변

Windows PowerShell 에서 이를 위해 start$ NUL 을 사용해야 합니다 .

mySum응용 프로그램의 이름이며 5 10전송중인 명령 행 인수 라고 가정하여이 명령을 입력 하십시오 .

start .\mySum  5 10 > $NUL 2>&1

start명령은와 유사한 효과로 분리 된 프로세스를 시작합니다 &. /B옵션 방지는 실행중인 프로그램이 콘솔 응용 프로그램 인 경우 새 터미널 창을 여는 시작합니다. 그리고 NULWindows와 동일 /dev/null합니다. 2>&1끝에 모두로 이동합니다 표준 출력에 열려진 리디렉션됩니다 NUL.