我有一个我无法更改的批处理文件,但我希望使用Powershell 2.0进行自动化.它以一个PAUSE命令结束,该命令显示:
Press any key to continue...
有没有办法从powershell脚本调用这个批处理文件,但让它退出而不需要用户按某些东西?
我正在维护一个高性能的CSV解析器,并尝试充分利用最新技术来提高吞吐量.对于此特定任务,这意味着:
CSV解析器的第一个实现是单线程.文件读取,字符解码,字段拆分,文本解析,都在同一个线程中.结果是吞吐量约为50MB/s.不错但远低于存储限制......
第二个实现使用一个线程来读取文件(在字节级别),一个线程来解码字符(从ByteBuffer到CharBuffer),以及多个线程来解析字段(我的意思是将分隔的文本字段解析为双精度,整数,日期...).这种方法运行得更快,在我们的盒子上接近400MB/s.
但仍远低于我们的存储性能.而且这些SSD将来会再次改进,我们并没有在Java中充分利用它.很明显,当前的限制是字符解码(CharsetDecoder.read(...)).这是瓶颈,在强大的Nehalem处理器上,它将字节转换为400MB/s的字符,非常好,但这必须是单线程的.CharsetDecoder在某种程度上是有状态的,具体取决于使用的字符集,并且不支持多线程解码.
所以我对社区的问题是(并且感谢您阅读目前为止的帖子):有没有人知道如何在Java中并行化charset解码操作?
所以我有一个我想要运行的命令,如下所示:
for /r %n in ("*.vdproj") do "C:/Program Files/Microsoft
Visual Studio 10.0/Common7/IDE/devenv.exe" %n /build "BuildServer"
Run Code Online (Sandbox Code Playgroud)
它似乎工作在它在每个.vdproj文件上运行devenv; 然而,它似乎并行运行并立即返回.这是个问题; 我需要等到它们全部完成才能运行.bat文件中的下一步.我怎么能
1-在运行下一个devenv之前,先让每个devenv'等待'
要么
2-等到devenv.exe全部完成后再继续运行?
我正在浏览Windows的Platform SDK头文件(生活,对吧?),我注意到很多地方都包含对预处理器符号的引用_MAC.例如:
// WinUser.h line 1568
/*
* Message structure
*/
typedef struct tagMSG {
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
#ifdef _MAC
DWORD lPrivate;
#endif
} MSG, *PMSG, NEAR *NPMSG, FAR *LPMSG;
Run Code Online (Sandbox Code Playgroud)
这是否意味着"Macintosh"?是否有时间可以为Macintosh编译Windows或Windows的子集?
我选择的字体通常默认为文字数字
文字数字http://hypftier.de/dump/numerals-text.png
这是我喜欢它们的一个原因.但是,对于表格或标题,我想指定应使用衬里数字:
标题数字http://hypftier.de/dump/numerals-titling.png
有没有办法在CSS中这样做?
(安抚搜索:
我有一个文本文件,其中包含宏名称列表(每行一个).我的最终目标是获取宏名称出现在当前目录文件中的次数.
宏的名字在C:\temp\macros.txt.
type C:\temp\macros.txt 在命令提示符下打印列表.
现在我想将输出传递给标准输入findstr.
type C:\temp\macros.txt | findstr *.ss
(ss是我正在寻找宏名称的文件类型).
这似乎不起作用,我得不到结果(非常快,似乎根本没有尝试).findstr <the first row of the macro list> *.ss确实有效.
我也尝试findstr *.ss < c:\temp\macros.txt过没有成功.
我需要找出一个特定的环境变量(让我们说Foo)在一个Windows批处理文件中是否包含子字符串(比如说BAR).有没有办法只使用批处理文件命令和/或默认安装的程序/命令与Windows?
例如:
set Foo=Some string;something BAR something;blah
if "BAR" in %Foo% goto FoundIt <- What should this line be?
echo Did not find BAR.
exit 1
:FoundIt
echo Found BAR!
exit 0
Run Code Online (Sandbox Code Playgroud)
上面标记的行应该使这个简单的批处理文件打印"Found BAR"?

这个红色减号在视觉工作室意味着什么?
我需要获取特定符号的完整CLR名称.这意味着,对于泛型类型,我需要的`1,`2等附加类型.现在,ISymbol已经有了一个MetadataName确实如此的财产.但是它排除了周围的类型和名称空间,只给出了手头符号的名称.
获得完全限定名称的通常选项,即通过ToDisplayString这里不太合适,因为它不会使用MetadataName它的各个部分.
有这样的内置吗?或者我是否必须在两者之间连接ContainingSymbols 链.?(这个假设是否存在分解?)
编辑:只是注意到你需要+在个别名称之间,如果它是包含在另一种类型中的类型,但除此之外,使用.应该工作,我想.
我正在写一些需要处理非常大的文本文件的东西(至少有几个GiB).这里需要什么(这是固定的)是:
该文件的大小不许在存储器完全保持它(这也是不希望的,附加的变化时,应尽快持续自).
我曾想过使用内存映射区域作为文件的窗口,如果请求超出其范围的行,它将被移动.当然,在那个阶段我仍然没有字节级别以上的抽象.为了实际使用内容我CharsetDecoder给了我一个CharBuffer.现在的问题是,我可以处理文本行可能就好了CharBuffer,但我还需要知道文件中该行的字节偏移量(以保持行索引和偏移的缓存,所以我不必再次从头开始扫描文件以查找特定行.
有没有办法CharBuffer将匹配ByteBuffer中的偏移量映射到匹配中?使用ASCII或ISO-8859-*显然是微不足道的,对于UTF-8和ISO 2022或BOCU-1来说,事情会变得非常丑陋(不是我实际上期望后两种,但UTF-8应该是默认值) - 并且仍然存在问题).
我想我可以CharBuffer再次将一部分转换为字节并使用长度.无论是工作还是我遇到了变音符号的问题,在这种情况下我可能会强制要求使用NFC或NFD以确保文本始终是明确编码的.
不过,我想知道这是不是要走到这里的方式.有更好的选择吗?
ETA:有人回答常见问题和建议:
这是用于模拟运行的数据存储,旨在成为完整数据库的小型本地替代方案.我们也有数据库后端并且它们被使用,但是对于它们不可用或不适用的情况,我们确实需要这样做.
我也只支持CSV的一个子集(没有嵌入式换行符),但现在还可以.这里有问题的几点是我无法预测线条的长度,因此需要创建文件的粗略地图.
至于什么我上面概述:我在思考的问题是,我可以很容易地确定对人物等级一行的末尾(U + 000D + U + 000A),但我不想假设这看起来像0A 0D上字节级别(对于UTF-16已经失败,例如,它或者是0D 00 0A 00或者00 0D 00 0A).我的想法是,我可以通过不对当前使用的编码细节进行硬编码来使字符编码变得可变.但我想我可以坚持使用UTF-8并将其他所有东西都加入其中.但不知何故,感觉不对劲.
batch-file ×3
java ×2
c# ×1
command-line ×1
css ×1
findstr ×1
nio ×1
pipe ×1
platform-sdk ×1
powershell ×1
roslyn ×1
text-files ×1
vdproj ×1
winapi ×1
windows ×1