草庐IT

强制输出

全部标签

c++ - 有没有办法确定标准输出是否指向控制台?

我想在Windows上运行的C++应用程序中插入代码,以确定stdout(或cout)是否指向控制台,如果是,则在写出之前将字符转换为终端编码。如果不是(例如,如果写入文件或管道),字符应该单独保留。转换部分不是问题,但我想知道应用程序是否有可能知道它的标准输出是去控制台还是去其他地方。我不确定WindowsAPI函数GetStdHandle是否有任何帮助,或者它是否只是一种指向标准输出但无法确定有关它的任何信息的方法。同样,我不确定我们是否可以从cout获得任何信息来表明它是指向控制台还是其他东西。到目前为止,我还没有找到任何类似的东西。 最佳答案

windows - 文件/目录路径应如下所示 - Powershell 输出

我正在使用Powershell脚本,它应该创建一个包含目录顺序(文件夹、子文件夹、文件等)的文件:$path="golf.de/dgv"Get-ChildItem-Path$folder-recurse|sortDirectory,Name|format-Table-auto$path,Directory,Name|Out-FileC:\Users\J.Kammermeier\Desktop\Johannes\testtext.txt到目前为止,输出看起来是这样的C:\Users\J.Kammermeier\Desktop\JohannesTest-Datei1.txtC:\Users

windows - ANSI 转义序列不会打印到 Windows 上的标准输出

我正在尝试在Windows上使用node.js将ANSI转义序列写入标准输出,但它似乎不起作用。具体来说,我使用ConEmu哪个support一个子集ANSI代码。我创建了一个测试文件,它应该重命名当前的控制台选项卡:process.stdout.write('\x1b]9;3;"abc"\x1b\x5c');但是,当我运行它时没有任何反应。如果我运行nodetest>out.txt,正确的字节将写入输出文件。为什么转义序列不起作用? 最佳答案 当Node的标准输出连接到非交互式接收器(即通过管道或重定向到文件)时,写入proces

python - Python UTF-16 输出和 Windows 行尾有错误吗?

使用这段代码:测试.pyimportsysimportcodecssys.stdout=codecs.getwriter('utf-16')(sys.stdout)print"test1"print"test2"然后我运行它:test.py>test.txt在Windows2000上的Python2.6中,我发现换行符被输出为字节序列\x0D\x0A\x00这当然是错误的对于UTF-16。我是不是遗漏了什么,或者这是一个错误? 最佳答案 试试这个:importsysimportcodecsifsys.platform=="win32

windows - 如何在 Perl 中获取 Win32::Process 命令的输出?

我正在使用useWin32::Process来运行我的应用程序,如下所示。它运行良好,但我没有找到任何方法将输出输出到.txt文件。我使用NORMAL_PRIORITY_CLASS而不是CREATE_NEW_CONSOLE在同一终端上获取输出,但我不知道如何将其重定向到txt文件。/洛基#!/usr/bin/perlusestrict;usewarnings;useWin32::Process;Win32::Process::Create(my$ProcessObj,"iperf.exe","iperf.exe-u-s-p5001",0,NORMAL_PRIORITY_CLASS,".

windows - windbg !heap 输出中的 'size' 数字是什么意思?

我在我的DMP文件中看到这样的输出:HeapentriesforSegment00inHeap0015000000150640:00640.00040[01]-busy(40)00150680:00040.01808[01]-busy(1800)00151e88:01808.00210[01]-busy(208)00152098:00210.00228[00]001522c0:00228.00030[01]-busy(22)001522f0:00030.00018[01]-busy(10)00152308:00018.00048[01]-busy(3c)WinDbg文档是这样说的:He

c# - FileSystemWatcher - 如何将输出通过管道传输到文本文件?

我正在使用FileSystemWatcher类。我正在尝试将输出通过管道传输到文本文件。我已经添加了StreamWriterfileWriter=newStreamWriter("test.txt");但没有任何输出到文件!我哪里错了?classProgram{staticvoidMain(string[]args){stringdirPath="C:\\";FileSystemWatcherfileWatcher=newFileSystemWatcher(dirPath);fileWatcher.IncludeSubdirectories=true;fileWatcher.Filte

c++ - 是否可以检查将程序输出重定向到文件的控制台的宽度?

GetConsoleScreenBufferInfo()在程序输出重定向到另一个命令或文件时使用标准输出初始化时返回错误。无论程序输出是否写在控制台上,有没有办法获取程序运行所在的控制台的句柄并获取其宽度?也许GetConsoleWindow()在这里有帮助,但我不知道如何使用它生成的句柄来获取宽度。 最佳答案 你的问题毫无意义。如果输出被重定向,那么您的控制台窗口宽度根本无关紧要。只有显示重定向输出的程序的控制台(如果有的话)很重要。您无法猜测记事本等窗口的大小。但是您可以获得控制台的句柄,您需要使用CreateFile():HA

windows - Teamcity 管道命令行输出到文件

是否可以在teamcity中调用命令行程序并将命令行程序的输出通过管道传输到文件? 最佳答案 您可能正在寻找类似于:http://confluence.jetbrains.com/display/TCD7/Command+Line的内容选项。在“构建步骤”中-您可以选择“命令行”作为运行器类型,并在“运行”中选择“自定义脚本”并编写要在“自定义脚本”文本区域中执行的shell命令行。echo"Hellothere!!"|teesomeFile.log如果你想...添加到工件路径 关于wi

Windows Powershell 输出到文件。奇怪的角色

运行这个命令:echo"foo">test.txt我在test.txt中得到奇怪的结果。实际上,我什至不能直接在堆栈溢出中复制粘贴内容,而是需要显示文件的十六进制输出。看起来像这样-fffe66006f006f000d000a00不确定FF和FE是什么,但看起来它还在每个字符之间放置了NULL。任何Windows用户都可以指导我正确的方向,了解为什么会发生这种情况以及如何解决它吗?我只想将内容“foo”不受干扰地放置在该文件中。 最佳答案 0xFFFE是Unicodebyteordermark用于UTF-16LE(小端),这是正常的