小编the*_*sdj的帖子

使用最大进程数并行化Bash脚本

可以说我在Bash中有一个循环:

for foo in `some-command`
do
   do-something $foo
done
Run Code Online (Sandbox Code Playgroud)

do-something是cpu绑定,我有一个漂亮闪亮的4核处理器.我希望能够一次跑到4 do-something岁.

天真的做法似乎是:

for foo in `some-command`
do
   do-something $foo &
done
Run Code Online (Sandbox Code Playgroud)

这将运行所有 do-something s的一次,但有几个缺点,主要是做多岁的也有一些显著I/O执行其全部一次可能会慢一点.另一个问题是这个代码块立即返回,所以当所有的do-somethings完成时,没办法做其他工作.

你怎么写这个循环所以总是有X do-something一次运行?

bash

83
推荐指数
8
解决办法
4万
查看次数

AnkhSVN与VisualSVN

我目前使用AnkhSVN将subversion集成到Visual Studio中.有什么理由我应该切换到VisualSVN吗?

AnkhSVN是免费的(不止一个意思),而VisualSVN的价格是50美元.所以,除非我错过了VisualSVN的一些很棒的功能,否则我没有看到任何切换的理由.

svn version-control visualsvn ankhsvn visual-studio

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

使用PST/CEST/UTC /等格式的时区解析DateTime

我正在尝试解析类似于的国际日期时间字符串:

24-okt-08 21:09:06 CEST
Run Code Online (Sandbox Code Playgroud)

到目前为止,我有类似的东西:

CultureInfo culture = CultureInfo.CreateSpecificCulture("nl-BE");
DateTime dt = DateTime.ParseExact("24-okt-08 21:09:06 CEST",
    "dd-MMM-yy HH:mm:ss ...", culture);
Run Code Online (Sandbox Code Playgroud)

问题是我应该在格式字符串中使用'...'?查看自定义日期和时间格式字符串 MSDN页面似乎没有列出用于以PST/CEST/GMT/UTC格式解析时区的格式字符串.

.net c# timezone datetime parsing

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

将cout和stdout重定向到C++中用于单元测试的字符串

我正在努力在单元测试下获取一些遗留代码,有时感知现有程序行为的唯一方法是从控制台输出.

我在网上看到很多关于如何将stdout重定向到C++中的另一个文件的例子,但有没有办法可以将它重定向到内存中的流,这样我的测试就不必依赖磁盘了?

我希望将遗留代码发送到stdout的任何内容转换为std :: string,这样我就可以轻松地查找输出.

编辑

遗留代码是如此糟糕,以至于用户混合使用cout << ..printf.这是我到目前为止:

void TestSuite::setUp(void)
{
    oldStdoutBuf = std::cout.rdbuf();
    std::cout.rdbuf(consoleOutput.rdbuf());
}
void TestSuite::tearDown(void)
{
    std::cout.rdbuf(oldStdoutBuf);
}
Run Code Online (Sandbox Code Playgroud)

问题是,这并没有用printf捕捉输出.我想要两件兼得的东西.有任何想法吗?

c++ unit-testing stdout legacy-code

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

如何在Firefox扩展中将HTML字符串转换为DOM对象?

我正在使用XMLHttpRequest下载一个网页(标签汤HTML),我想获取输出并将其转换为DOM对象,然后我可以运行XPATH查询.如何从字符串转换为DOM对象?

似乎一般的解决方案是创建一个隐藏的iframe并将字符串的内容抛入其中.已经有议论更新的DOMParser支持文本/ HTML,但像Firefox 3.0.1你仍然可以获得一个NS_ERROR_NOT_IMPLEMENTED,如果你尝试.

除了使用隐藏的iframe技巧之外还有其他选择吗?如果没有,那么执行iframe技巧的最佳方法是什么,以便您的代码在任何当前打开的选项卡的上下文之外工作(这样关闭选项卡不会搞砸代码等)?

是为什么我正在寻找除iframe黑客之外的解决方案的一个例子,如果我必须编写所有代码以获得强大的解决方案,那么我宁愿继续寻找其他东西.

javascript firefox dom

26
推荐指数
2
解决办法
2728
查看次数

在Visual Studio 2010 RC中更改默认浏览器

在右键单击.aspx页面时,在Visual Studio 2010(RC)中不再有"浏览"上下文菜单.如何更改默认浏览器?

默认情况下它似乎使用操作系统默认浏览器,但我更喜欢在调试ASP.net应用程序时使用IE.(我用ASP.net MVC 2测试这个)

browser visual-studio-2010-rc asp.net-mvc-2

23
推荐指数
4
解决办法
5万
查看次数

作为独立开发人员许可Microsoft软件的最佳方式

我最近从一家小型咨询公司的员工转变为独立顾问,随着时间的推移,我将需要升级Windows和Visual Studio.那么对于小型开发者来说,最实惠的方法是什么?

我以前的老板建议我获得操作系统许可证的TechNet Plus订阅,我已经完成了这个并且似乎是我需要的,但是对未来开放的其他选项.

Visual Studio我很难弄清楚Professional和Standard之间究竟有什么区别.另外我真的很喜欢数字版,但似乎昂贵的MSDN订阅是唯一的方法吗?

此处列出的带有MSDN Professional的Visual Studio 2008 Professional 似乎半合理定价为1,199美元.这将使TechNet Plus订阅不再需要.

windows licensing visual-studio

15
推荐指数
2
解决办法
4755
查看次数

在C中更改当前进程的优先级

在Windows上,我可以这样做:

HANDLE hCurrentProcess = GetCurrentProcess();

SetPriorityClass(hCurrentProcess, ABOVE_NORMAL_PRIORITY_CLASS);
Run Code Online (Sandbox Code Playgroud)

我怎么能在*nix上做同样的事情?

c unix process-management cross-platform

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

仅在安装文件系统时才进行RSync

我想设置一个cron作业来将远程系统rsync到备份分区,例如:

bash -c 'rsync -avz --delete --exclude=proc --exclude=sys root@remote1:/ /mnt/remote1/'
Run Code Online (Sandbox Code Playgroud)

我希望能够"设置它并忘记它"但是如果没有/mnt/remote1安装会怎么样?(重启后或其他什么)我想错误,如果/mnt/remote1没有挂载,而不是填补本地文件系统.

编辑:
这是我为脚本提出的,清理改进升值(特别是对于空的然后...其他,我不能留空或bash错误)

#!/bin/bash

DATA=data
ERROR="0"

if cut -d' ' -f2 /proc/mounts | grep -q "^/mnt/$1\$"; then
    ERROR=0
else
    if mount /dev/vg/$1 /mnt/$1; then
        ERROR=0
    else
        ERROR=$?
        echo "Can't backup $1, /mnt/$1 could not be mounted: $ERROR"
    fi
fi

if [ "$ERROR" = "0" ]; then
    if cut -d' ' -f2 /proc/mounts | grep -q "^/mnt/$1/$DATA\$"; then
        ERROR=0
    else
        if mount /dev/vg/$1$DATA /mnt/$1/data; then
            ERROR=0
        else …
Run Code Online (Sandbox Code Playgroud)

sysadmin bash backup rsync

8
推荐指数
2
解决办法
6201
查看次数

Process.Start的转义字符串

如何将未知字符串转义为传递给Process.Start作为参数?

我目前正在逃避基本的引号和反斜杠,但最近我的输入开始包含http://www.fileformat.info/info/unicode/char/ff02/index.htm(全宽引号)等内容.

所以我的问题是,我需要逃避什么才能安全地传递一个字符串作为Process.Start的参数?

编辑: 所以我需要澄清一下.我真正想要的是一个必须在cmd.exe的带引号的字符串("foo")中转义的所有字符的列表.我最初处理双引号字符以及反斜杠字符,但我最终有一些输入包含一个全宽带引号(如上所述),它也需要转义.所以问题是,对于使用Process.Start传递给cmd.exe的带引号的字符串参数,我还需要转义什么?

c# cmd escaping

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