/dev/null
Windows มีอะไรเทียบเท่า
/dev/null
Windows มีอะไรเทียบเท่า
คำตอบ:
ฉันคิดว่าคุณต้องการNUL
อย่างน้อยภายในพรอมต์คำสั่งหรือแบทช์ไฟล์
ตัวอย่างเช่น:
type c:\autoexec.bat > NUL
ไม่ได้สร้างไฟล์
(ฉันเชื่อว่าสิ่งเดียวกันนี้เป็นจริงถ้าคุณพยายามสร้างไฟล์โดยทางโปรแกรม แต่ฉันไม่ได้ลองเลย)
ใน PowerShell คุณต้องการ$null
:
echo 1 > $null
NUL:
(และCON:
, PRN:
... ) ส่วนใหญ่จะเป็นเรื่องของรูปแบบและแสดงให้เห็นอย่างชัดเจนว่าเป็นวัตถุที่พิเศษและไม่ได้ไฟล์ที่เรียกว่าNUL:
NUL
นอกจากนี้ยังเป็นไปได้ด้วย API พิเศษในการสร้างไฟล์ที่เรียกว่าNUL
(ดูคำตอบข้อใดข้อหนึ่ง) ฉันฝันว่าบางทีวันหนึ่งถ้าทุกคนใช้เครื่องหมายจุดคู่โดยการประชุมเราจะสามารถคัดค้านชื่ออุปกรณ์พิเศษที่หวั่น :-)
ตามข้อความนี้ในรายการส่งจดหมายของ GCCคุณสามารถใช้ไฟล์ "nul" แทน / dev / null:
#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สำหรับรหัสนี้คัดลอกมาจากข้อความของเขา)
นอกจากนี้คุณยังสามารถใช้ไฟล์ "nul" พิเศษผ่านการเปลี่ยนเส้นทาง
C:\dev
ไดเรกทอรีใน Windows และคุณใช้โปรแกรมอรรถประโยชน์ของ GNU จำนวนมากในที่สุดคุณจะได้รับไฟล์ลึกลับที่ชื่อว่า null ในไดเรกทอรีนั้น
NUL
ใน Windows ดูเหมือนจะเป็นเส้นทางเสมือนจริงในโฟลเดอร์ใด ๆ เช่นเดียวกับ..
, .
ในระบบแฟ้มใด ๆ
ใช้โฟลเดอร์ใด ๆ ตามด้วย NUL จะทำงาน
ตัวอย่าง,
echo 1 > nul
echo 1 > c:\nul
echo 1 > c:\users\nul
echo 1 > c:\windows\nul
มีผลเช่นเดียว/dev/null
กับบน Linux
นี่คือการทดสอบบน Windows 7, 64 บิต
md \\.\c:\nul
quora.com/… , gohacking.com/how-to-create-con-folder-in-windows , superuser.com/questions/86999/…
nul
Jon Skeet ถูกต้อง นี่คือหน้าNul Device Driverในเอกสาร Windows Embedded (ฉันไม่รู้ว่าทำไมจึงไม่ใช่ที่อื่น ... )
นี่คืออีก:
หากคุณต้องการดำเนินการใน Microsoft Windows เทียบเท่า symlink ไปยัง/dev/null
ใน Linux คุณจะเปิดและผู้ดูแลระบบcmd
และประเภท:
สำหรับไฟล์:
mklink c:\path\to\file.ext NUL:
หรือสำหรับไดเรกทอรี:
mklink /D c:\path\to\dir NUL:
นี่จะทำให้ไฟล์ / direcotry เสมอที่ 0 ไบต์และยังคงกลับสู่ความสำเร็จทุกครั้งที่เขียน
คุณต้องใช้startและ$ NULสำหรับสิ่งนี้ในWindows PowerShell :
พิมพ์คำสั่งนี้โดยสมมติว่าmySum
เป็นชื่อแอปพลิเคชันของคุณและ5
10
เป็นอาร์กิวเมนต์บรรทัดคำสั่งที่คุณกำลังส่ง
start .\mySum 5 10 > $NUL 2>&1
คำสั่งจะเริ่มต้นกระบวนการเดี่ยวผลคล้ายกับstart
ป้องกันตัวเลือกเริ่มต้นจากการเปิดหน้าต่าง terminal ใหม่หากโปรแกรมที่คุณกำลังทำงานเป็นโปรแกรมประยุกต์ที่คอนโซล และเทียบเท่าของ Windows ของ ในตอนท้ายจะเปลี่ยนเส้นทาง stderr ที่ stdout ซึ่งทั้งหมดจะไป&
/B
NUL
/dev/null
2>&1
NUL