Windows上/dev/null的等价程序是什么?
当前回答
NUL也可以通过编程方式工作。例如:
freopen("NUL", "w", stderr);
按预期工作,无需创建文件。(MSVC + + 12.0)
其他回答
唯一可以处理NUL的内置工具是旧的副本。 但请确保,您使用开关/b(二进制),否则内容将不会被OS缓存(这是我的目标)。
将目录(递归)放入操作系统缓存:
for /f "delims=" %f in ('dir /s /b /a-d D:\Solr\data') do @copy /b "%f" nul > nul
使用RamMap(来自Sysinternals)进行验证。
我认为您需要NUL,至少在命令提示符或批处理文件中。
例如:
type c:\autoexec.bat > NUL
不创建文件。
(我相信如果您尝试以编程方式创建一个文件,也是如此,但我还没有尝试过。)
在PowerShell中,你需要$null:
echo 1 > $null
乔恩·斯基特说得对。这里是Windows嵌入式文档中的null设备驱动程序页面(我不知道为什么它不在其他地方…)
这是另一个:
注册表中的空设备 特殊文件名 关于文件命名的更多信息
NUL也可以通过编程方式工作。例如:
freopen("NUL", "w", stderr);
按预期工作,无需创建文件。(MSVC + + 12.0)
根据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;
}
(这段代码归功于丹尼;复制粘贴自他的信息。)
您还可以通过重定向使用这个特殊的“nul”文件。
推荐文章
- 我如何找到哪个程序正在使用端口80在Windows?
- 在Windows中有像GREP这样的模式匹配实用程序吗?
- 如何在Windows命令提示符下运行.sh ?
- 如何从命令行在windows中找到mysql数据目录
- 在没有事件源注册的情况下写入Windows应用程序事件日志
- 无法在Windows上从/usr/local/ssl/openssl.cnf加载配置信息
- GIT克隆在windows中跨本地文件系统回购
- 如何运行一个PowerShell脚本而不显示窗口?
- PowerShell:仅为单个命令设置环境变量
- 为什么这个Windows批处理文件只执行第一行,而在命令shell中执行所有三行?
- 环境变量存储在Windows注册表的哪里?
- 有一个好的Valgrind Windows的替代品吗?
- Windows和Linux上的c++编译:ifdef开关
- 如何验证批处理文件中是否存在一个文件?
- XAMPP -端口80被PID 4的“无法打开进程”使用!12