问题列表 - 第861页

如何使用Perl使批处理文件像一个简单的grep一样?

我已经知道这个问题的明显答案:"只需下载<插入喜欢的windows grep或grep-like tool>".但是,我在当地IT人员严格控制的环境中工作,关于我们允许在计算机上使用的内容.我只想说:我可以在Windows XP上访问Perl.这是我想出的一个快速的Perl脚本,它做了我想要的,但我还没有弄清楚如何设置一个批处理文件,以便我可以将命令输出传入其中,或传递一个文件(或文件列表) ?)作为"grep表达式"之后的参数:

perl -n -e "print $_ if (m![expression]!);" [filename]

如何编写我可以执行的批处理脚本,例如:

dir | grep.bat mypattern
grep.bat mypattern myfile.txt

编辑:虽然我标记了另一个"答案",但我想对Ray Hayes的回答表示赞赏,因为它实际上是"Windows方式",即使另一个答案在技术上更接近我想要的.

windows perl batch-file

9
推荐指数
4
解决办法
2万
查看次数

QDrag 在拖动时被破坏

我有一个 Windows/Linux Qt 4.3 应用程序,它在 QTreeView 中使用拖放操作。我有两个非常相似的应用程序,它们使用同一组 Qt 库。拖放功能在 Linux 上都适用,但在 Windows 上仅适用于其中一种。

在不起作用的应用程序中,一旦移动鼠标,QDrag 对象就会被删除。它由事件队列中的 DeferredDelete 事件删除,该事件队列在拖动期间仍在 Qt 中处理。我不知道如何查看导致 QDrag 对象过早删除的原因。

我想不出调试这个问题的好方法。我比较了来源,找不到任何明显的东西。我尝试在另一个应用程序中使用其中一个应用程序的代码。

有什么建议么?

更新:

QDrag 操作失败的原因是 COM 未成功初始化,因此 QDrag::exec 中对 DoDragDrop 的调用立即返回。QApplication 尝试通过在 qt_init 中调用 OleInitialize 来初始化 COM,但失败并出现错误“设置后无法更改线程模式”。

有趣的是,即使 OleInitialize 是 main 中完成的第一件事,也会发生这种情况,因此线程模式最初是由某些外部依赖项设置的。在 Windows 上运行的应用程序之间的差异之一是失败的应用程序还包含 .NET 代码,因此这可能就是问题所在。

解决了:

此问题是 COM/CLR 互操作问题。CLR 在初始化时将单元状态设置为 MTA,然后当 Qt 尝试初始化 COM 时会失败。Adam NathanGotcha with STAThreadAttribute and Managed C++中讨论了这个问题和旧的解决方案。在 Visual Studio 2005 中,您可以在“配置属性”>“链接器”>“高级”中设置 /CLRTHREADATTRIBUTE:STA 编译器选项,将线程属性设置为 STA,而无需创建新的入口点。

c++ com qt drag-and-drop

5
推荐指数
1
解决办法
1558
查看次数

Lisp灵活性的实际例子?

有人试图向我出售Lisp,作为一种超级强大的语言,可以做任何事情,然后一些.

是否有Lisp功能的实用代码示例?
(最好与用常规语言编码的等效逻辑一起使用.)

lisp homoiconicity

67
推荐指数
13
解决办法
1万
查看次数

正则表达式只用一个替换两个(或多个)连续字符?

在java中,可以使用哪个正则表达式来替换它们,例如:

之前:aaabbb之后:ab

之前:14442345之后:142345

谢谢!

java regex

20
推荐指数
2
解决办法
2万
查看次数

在MATLAB中,类方法可以在不公开的情况下充当uicontrol回调吗?

在MATLAB 2008a中,有没有办法允许类方法充当uicontrol回调函数而不必公开该方法?从概念上讲,该方法不应该是公共的,因为它永远不应该由类的用户调用.它只应该由于触发回调的UI事件而被调用.但是,如果我将方法的访问权限设置为private或protected,则回调不起作用.我的类派生自hgsetget,并使用2008a classdef语法定义.

uicontrol代码看起来像:


methods (Access = public)
   function this = MyClass(args)
      this.someClassProperty = uicontrol(property1, value1, ... , 'Callback', ...
      {@(src, event)myCallbackMethod(this, src, event)});
      % the rest of the class constructor code
   end
end
Run Code Online (Sandbox Code Playgroud)

回调代码如下所示:


methods (Access = private)  % This doesn't work because it's private
   % It works just fine if I make it public instead, but that's wrong conceptually.
   function myCallbackMethod(this, src, event)
      % do something
   end
end
Run Code Online (Sandbox Code Playgroud)

oop matlab user-interface callback access-control

7
推荐指数
1
解决办法
3290
查看次数

海湾合作委员会 - "预期不合格的身份'''令牌"

请忍受我,我只是在学习C++.

我正在尝试编写我的头文件(对于类),我遇到了一个奇怪的错误.

cards.h:21: error: expected unqualified-id before ')' token
cards.h:22: error: expected `)' before "str"
cards.h:23: error: expected `)' before "r"
Run Code Online (Sandbox Code Playgroud)

"期望不合格的身份"之前的'令牌'是什么意思?我做错了什么?

编辑:对不起,我没有发布整个代码.

/*
Card header file
[Author]
*/
// NOTE: Lanugage Docs here http://www.cplusplus.com/doc/tutorial/

#define Card
#define Hand
#define AppError

#include <string>

using namespace std;


// TODO: Docs here
class Card { // line 17
    public:
        enum Suit {Club, Diamond, Spade, Heart};
        enum Rank {Two, Three, Four, Five, Six, Seven, Eight, Nine,
                   Ten, Jack, Queen, King, Ace};
        Card(); // …
Run Code Online (Sandbox Code Playgroud)

c++

7
推荐指数
1
解决办法
6万
查看次数

你把CSS边距放在哪里?

当你想在HTML元素之间添加空格(使用CSS)时,你附加了哪个元素?

我经常遇到这样的情况:

<body>
  <h1>This is the heading</h1>
  <p>This is a paragraph</p>
  <h1>Here's another heading</h1>
  <div>This is a footer</div>
</body>
Run Code Online (Sandbox Code Playgroud)

现在,假设我想要在每个元素之间留出1em的空间,但是没有高于第一个h1或低于最后一个div.我会附加哪些元素?

显然,这之间没有真正的技术差异:

h1, p { margin-bottom: 1em; }
Run Code Online (Sandbox Code Playgroud)

...还有这个...

div { margin-top: 1em; }
p { margin-top: 1em; margin-bottom: 1em }
Run Code Online (Sandbox Code Playgroud)

我感兴趣的是次要因素:

  1. 一致性
  2. 适用于所有情况
  3. 轻松/简单
  4. 易于做出改变

例如:在这个特殊情况下,我会说第一个解决方案比第二个更好,因为它更简单; 您只是在一个属性定义中将margin-bottom附加到两个元素.但是,我正在寻找更通用的解决方案.每次我做CSS工作,我都觉得有一个很好的经验法则适用......但我不确定它是什么.有没有人有一个好的论点?

css margin

17
推荐指数
1
解决办法
2630
查看次数

ClickOnce Online-Only Application作为TS RemoteApp

我尝试了一切让我们的ClickOnce VB.NET应用程序作为RemoteApp在终端服务下运行.我有一个批处理文件,运行应用程序的.application文件.

这可以通过终端服务器上的RDP桌面会话正常工作.然而,作为TS RemoteApp,嗯......不是那么多.

我在客户端系统上得到一个快速命令提示符(批处理文件)然后......没有...

同样可以直接指向.application文件(不使用批处理文件),甚至可以在本地复制出版本并让它指向它.

我发现了一个关于类似问题的technet.microsoft.com讨论,但没有列出它的解决方案.

对于之前遇到过这种情况并且让它工作的人来说,你需要做什么?

我们目前将RemoteApp用于该服务器上的其他所有内容,因此我希望尽可能坚持使用它.

目前的解决方法是,当我们通过OneClick发布到网络时,在我们的终端服务器上为应用程序构建和运行基于MSI的安装程序,但这有时会非常痛苦并且很容易忘记.

由于应用程序在完全桌面模式下运行时通过终端服务正常工作,但在RemoteApp期间不能正常工作,我认为这不是特定于终端服务器权限的任何内容,因为ClickOnce需要在作为RemoteApp运行时不可用的东西.

vb.net clickonce remoteapp

3
推荐指数
1
解决办法
1万
查看次数

正则表达式匹配DNS主机名或IP地址?

有没有人有一个方便的正则表达式,可以匹配任何合法的DNS主机名或IP地址?

编写一个可以在95%的时间内工作的一个很容易,但是我希望得到一些经过充分测试的东西,以完全匹配最新的RFC主机名规范.

regex dns

358
推荐指数
4
解决办法
33万
查看次数

如何从我的Windows机器上运行安装在linux机器上的OpenGL应用程序?

本着帮助的精神,这是我遇到的问题并解决了,所以我将在这里回答这个问题.

问题

我有:

必须在Redhat或SuSE企业上安装的应用程序.

它有很大的系统要求,需要OpenGL.

它是需要在一台机器上一起操作的一套工具的一部分.

此应用程序用于人工时间的时间密集型任务.

我不想坐在服务器室里工作这个应用程序.

所以,问题出现了...如何从远程Windows机器运行此应用程序?

我将概述我的解决方案.随意评论替代品.此解决方案也适用于更简单的环境.我的情况有点极端.

linux sysadmin x11 opengl putty

6
推荐指数
2
解决办法
1万
查看次数