小编Wil*_*ill的帖子

如何通过管道给出参数kill

我需要搜索某个进程并终止该进程.我写了这样一个命令:

ps -e | grep dmn | awk '{print $1}' | kill
Run Code Online (Sandbox Code Playgroud)

进程名称的位置dmn.但它没有用.如何按名称和kill它们查找进程.

linux bash shell command-line command-line-arguments

68
推荐指数
6
解决办法
5万
查看次数

比较装配中的向量

我有两个向量; 其中一个(VectorA)由用户引入,另一个(VectorB)包含一堆单个数字.它们都是char矢量.这个想法是程序必须逐个比较VectorA的数量,以确保它们是有效数字,通过将它们与VectorB中的数字进行比较,VectorB包含所有可用的有效数字.

如果VectorA中的所有数字都包含在VectorB中,则程序返回0.如果VectorB中没有任何VectorA数,则程序返回1.退货登记是EAX.

这是代码,我希望它不是太乱,但请耐心等待(如果我使用错误的术语,也请原谅,因为英语不是我的母语)...


    MOV edi, 5     ;VectorA is a 5 digit vector.

character_1:
    mov rcx, 10    ;VectorB is a 10 digit vector.

character_2:
    mov eax, [ebx+edi-1]       ;ebx contains the address of VectorA    
    cmp eax, [VectorB+rcx-1]    
    je found_it    
    loop character_2  

    mov eax, 1    
    jmp end_comp   
found_it:

    dec edi    
    cmp edi, 0    
    jne character_1

    mov eax, 0
end_comp:
Run Code Online (Sandbox Code Playgroud)

首先,我知道我可能不应该将其用作EAX索引,但在尝试使用其他一些注册表EAX之后,唯一一个不会让人感到YASM惊慌失措.

问题是......它似乎不起作用.第一个验证循环工作正常.如果VectorA的最后一个数字是9,它实际上转到found_it标签并执行它必须做的事情.但是,无论第二个数字是什么,它都不会在VectorB上找到它.

出于调试目的,我在mov esi, [VectorB+rcx-1]主线正上方添加了一条CMP线,其中比较了两个值.我发现他们第一次比较,ESI有正确的价值.但是,程序第二次通过该指令时,ESI返回一个14648值,这当然 …

assembly

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

如何使用命令"at"在MacOS中执行shell

我想在MacOS中执行一次shell脚本.

起初,我在Ubuntu中尝试了"at"命令并且运行良好.但是当我在MacOS中使用相同的方法时,事情就出错了

我键入:

$ at now + 2 minutes
ls -al > tmpfile
(ctrl+d,EOF)
Run Code Online (Sandbox Code Playgroud)

这项工作成功添加.

"at -l"的输出是:

(some other output)
11         Fri  Jul  19  15:18:00  2013
Run Code Online (Sandbox Code Playgroud)

但是在15:18之后,tmpfile没有改变.

我想知道如何在MacOS corectly中使用"at"命令,或者是否有任何其他方法在特定时间执行一些shell脚本(非定期)

macos shell

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

`Parallel.ForEach` 带有按定义顺序的最后一步

我正在寻找一种“整洁”且有效的方法来实现长步骤 1(可以并行化)和步骤 2 的组合,步骤 2 需要按原始顺序(如果可能的话,尽量减少来自第一步保存在 RAM 中)同时允许第二步在第一个对象的步骤 1 中的数据可用时立即开始,并与步骤 2 一起提供更多数据。

为了更详细地说明这一点,我需要压缩大量图像(慢速 - 第 1 步),然后通过网络连接按顺序发送每个图像(第 2 步)。在任何阶段限制 RAM 中准备好的压缩数据块的数量也很重要,例如,如果发送 1000 张图像,我想将“已完成”但未发送的图像数量限制为(例如)线程数/使用的处理器。

我已经完成了这个的“手写”版本,使用了一组 Task 对象,但它看起来很混乱,而且我相信其他人一定有类似的需求,所以有没有更“标准”的方法来做到这一点? 理想情况下,我希望有 2 个代表的 Parallel.ForEach 变体 - 一个用于第 1 步,一个用于第 2 步,我希望标准覆盖之一(例如包含“localFinal”参数的覆盖)可能有所帮助,但在原来这些最后阶段是“每个线程”,而不是“每个委托”。

任何人都可以指出我现有的巧妙方法来实现这一目标吗?

c# parallel-processing parallel.foreach

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

C++中的文件通道

在java中,有FileChannel,我可以从文件通道读取.我也可以在我想要开始阅读的频道中设置位置.

C++/C中的任何类似函数?

c c++ io filechannel

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

在java中按字符串<1.7切换案例

function checkValue(value) {
    if (value === null || value === undefined || value === '') {
        return '-';
    } else {
        switch (value) {
        case true:
            return 'Yes';
            break;
        case false:
            return 'No';
            break;
        default:
            return value;
            break;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我知道按字符串切换的情况只有> 1.7.无论如何我可以在不使用传统的java中转换这段代码if/else.这段代码是用来写的JavaScript.

javascript java switch-statement

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

在OS X上的Emacs中设置`fullheight`和`width`

我发现Emacs框架的默认大小有点小.从阅读中我知道我可以很容易地设置高度和宽度,如下所示:

;;; 140 x 60 window size
(setq default-frame-alist '((width . 140) (height . 60)))
Run Code Online (Sandbox Code Playgroud)

这在我的外接显示器上效果很好,但对于笔记本电脑显示器而言它太大了.我可以通过更改为以下内容来解决高度问题:

;;; automatically set the height
(setq default-frame-alist '((fullscreen . fullheight)))
Run Code Online (Sandbox Code Playgroud)

这使得帧对于当前屏幕设置得尽可能高.但是,如果我使用此方法,则无法设置帧的宽度.添加(width . 140)到上面的alist会将宽度设置为正确的值,但也会再次将高度设置为默认高度.

当我看到框架出现时,它将自己设置为全高,然后将宽度设置为我请求的值,并收缩高度.

我可以使用以下代码克服此问题:

;;; Full height for the default window
(setq default-frame-alist
      '((fullscreen . fullheight)))
;; Set the width in a hook and have all windows inherit
(setq frame-inherited-parameters
      '(width height))
(add-hook 'after-init-hook
          (lambda ()
                  (set-frame-parameter nil 'width 140)))
Run Code Online (Sandbox Code Playgroud)

它使用钩子将第一帧的宽度设置为我想要的值,然后将所有其他窗口设置为继承此值.

然而,这不是很优雅,所以问题是"我怎样才能以更简单(或更少的hackish)方式实现这一目标?".

如果你想看到我的确切 init.el脚本,请看看这个要点

TL; DR

如何设置帧的宽度,并在OS X上将当前监视器上的帧设置得尽可能高?看来你无法指定 …

emacs dot-emacs emacs24

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

当用户在Java中不再活动时,我们如何自动使会话失效?

请问有什么可以告诉我,当用户在Java上的用户不再活动超过15分钟时,我们如何使用户的会话无效?

java web-applications java-ee web

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

屏幕上没有显示输出

请查看为什么屏幕上没有显示输出!我正在编写一个程序,可以在屏幕上打印10次"生日快乐".我的计划是:

import java.io.*;
public class Task_1
{
    public static void main(String args[])
    {
        int a;
        for(a=1;a>=10;a++)
            System.out.println("Happy Birthday");
    }
}
Run Code Online (Sandbox Code Playgroud)

java bluej

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

用于输入目录的Shell脚本(文件夹名称包含空格)

我正在编写一个shell脚本来输入多个文件夹.我目前正在将shell文件的名称存储在shell变量中path="October\ @012/".如果我这样做,cd $path我收到错误bash:cd:October \:没有这样的文件或目录

我究竟做错了什么?

unix directory shell

0
推荐指数
1
解决办法
5579
查看次数

赋值和不等于优先级

The C Programming Language,第2版的第17页中,作者说

优先级!=比的高=

因此,当我想测试它时,它不是那样的.这是我的简单程序:

#include <stdio.h>

int main() {
    int inp;

    while(inp = getchar() != EOF) {
        putchar(inp);
    }
}
Run Code Online (Sandbox Code Playgroud)

我尝试读取输入并将其显示给用户.当我尝试这一点时,没有任何事情发生,屏幕是空的,但是当我尝试这个时,一切正常:

#include <stdio.h>

int main() {
    int inp;

    while((inp = getchar()) != EOF) {
        putchar(inp);
    }

}
Run Code Online (Sandbox Code Playgroud)

怎么了?我有gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00).

c

0
推荐指数
1
解决办法
103
查看次数