标签: exec

为什么argv以nullpointer结束?

在execve()手册页中,可以说argv是一个字符串参数列表,它以空指针结束.但NP的用途是什么?我的意思是,参数的数量存储在argc中,那么空指针的重点是什么?

c exec

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

Java - Runtime.getRuntime().exec()发生了什么?

我在Java中的Runtime.exec()问题我的代码:

String lol = "/home/pc/example.txt";
String[] b = {"touch", lol}; 
try {  
    Runtime.getRuntime().exec(b);  
} catch(Exception ex) {  
    doSomething(ex);  
}
Run Code Online (Sandbox Code Playgroud)

它工作正常,但当我尝试变换变量"lol"文件不会在硬盘中创建

例如: String lol = x.getPath();getPath()返回String

我该怎么办 ?

感谢您的回复 :)

java runtime exec runtime.exec

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

从java程序后台启动shell脚本

我目前通过代码从我的Java启动一个shell脚本,如下所示:

ProcessBuilder processBuilder = new ProcessBuilder();
processBuilder.directory("/directory/where/the/script/is/located/");
String[] command = new String[]{"sh", "myScript.sh"};
processBuilder.command(command);
Map<String, String> env = processBuilder.environment();
//tweak the environment with needed additions
env.put(...);
Process p = processBuilder.start();

stdInput = new BufferedReader(new InputStreamReader(p.getInputStream()));
stdError = new BufferedReader(new InputStreamReader(p.getErrorStream()));

// read the output from the command
String line;
while ((line = stdInput.readLine()) != null)
{
  logger.fine(line);
}
p.waitFor();
int returnCode = p.exitValue();
// Return something according to the return code
return ...;
Run Code Online (Sandbox Code Playgroud)

如果我现在想要启动脚本而不是等待它结束(因此失去了根据返回代码返回的能力),但仍然能够预先调整环境?我该怎么办?

谢谢

java background exec environment-variables

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

在python中的for循环中使用exec

我正在尝试运行一个遍历命令输出的每一行的for循环.例如:

for line in exec 'lspci | grep VGA':
    count = count + 1
Run Code Online (Sandbox Code Playgroud)

尝试获取系统中安装的视频卡数量.但它似乎没有排列for循环线上的语法.

我是否必须为exec导入库?或者我使用它错了?或两者?

谢谢

python exec

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

perl fork()exec(),子进程变得狂野

我正在使用Linux并且.sh在tcsh.

我已经做了一个非常基本的fork和exec,但是我需要帮助来实现它的安全性.

基本上我的perl脚本.sh在子进程中调用脚本.但是当我Ctrl+c杀死父母时,孩子会忽略信号.

1)如何捕获SIGINT子进程?

2)运行.sh脚本的子进程仍然STDOUT到xterm的屏幕.我该如何删除?我在考虑在后台运行脚本

 exec("shell.sh args &");  
Run Code Online (Sandbox Code Playgroud)

但是没有经过测试,因为我需要弄清楚如何防止孩子先疯狂.

3)父进程(perl脚本)不等待子进程(.sh脚本).所以我读了很多关于这个孩子变成僵尸的故事 ??? 脚本完成后会发生吗?我怎么能阻止它?

$pid = fork();
if($pid < 0){
    print "Failed to fork process... Exiting";
    exit(-1);
    }
elsif ($pid ==0) {
    #child process
    exec("shell.sh args");
    exit(1);
    }
else { #execute rest of parent}
Run Code Online (Sandbox Code Playgroud)

linux perl fork process exec

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

ruby exec使用我的〜/ .bashrc中的函数

在我~/.bashrc,我有一个功能:

function sayHi() {
    echo "hi, $@"
}
Run Code Online (Sandbox Code Playgroud)

在Ruby中我想:

`sayHi "friend"`
Run Code Online (Sandbox Code Playgroud)

然而,sayHi无论在什么情况下红宝石运行exec或"无法找到" system.

我怎么能让Ruby使用我的功能.bashrc?

ruby bash exec

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

打开可执行文件

我有这个代码来打开一个可执行文件:

exec("C:/Users/Affex/Desktop/Blockland/".$session->username."/".$session->username.".exe        ptlaaxobimwroe -dedicated");
Run Code Online (Sandbox Code Playgroud)

它会打开我希望它打开的文件,但它会一直加载页面,直到php.ini启动最大执行时间.

我正在尝试为我的免费托管服务设置一个游戏面板,BIOHazardHosting.co.uk,我们还有其他一切排序但是这个.

php executable exec

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

bash/scp如何扩展"远程"glob模式?

如果我执行(在bash中):

scp remote.machine:/var/log/sy* .
Run Code Online (Sandbox Code Playgroud)

我得到了远程机器上匹配/ var/log/sy*的所有文件.

syslog                                     100%   91KB  10.1KB/s   00:09    
syslog.1                                   100%  753KB  62.7KB/s   00:12    
syslog.2.gz                                100%   55KB   7.9KB/s   00:07    
syslog.3.gz                                100%   50KB   8.3KB/s   00:06   
Run Code Online (Sandbox Code Playgroud)

这怎么办?

我的印象是在执行命令之前,shell会扩展glob模式.

我的理解不正确吗?

linux bash glob exec

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

Nodemon在重新启动时不执行exec命令

我有关于nodemon的--exec参数的问题.在这篇文章(http://blog.keithcirkel.co.uk/how-to-use-npm-as-a-build-tool/)之后,我尝试用NPM设置我的开发环境,但nodemon拒绝为我提供服务节点服务器,当我把--exec参数.

我在package.json中的脚本:

"scripts": {
    "clean": "rimraf src/app/build/app.bundle.js",
    "build": "browserify src/app/scripts/app.js > src/app/build/app.bundle.js",
    "serve": "nodemon server.js --ignore src/app/build --exec \"npm run build\"",
    "cbs": "npm run clean && npm run build && npm run open && npm run serve",

    "open:dev": "opener http://localhost:9000",
},
Run Code Online (Sandbox Code Playgroud)

这就是我在我的git bash中得到的:

poc-js-pdf@0.0.1 serve C:\Users\Mdeumie\Projets\Archi\poc-js-pdf
nodemon server.js --ignore src/app/build --exec "npm run build"

[nodemon] 1.8.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `npm run build server.js`

poc-js-pdf@0.0.1 build C:\Users\Mdeumie\Projets\Archi\poc-js-pdf
browserify src/app/scripts/app.js …
Run Code Online (Sandbox Code Playgroud)

restart exec node.js npm nodemon

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

如何从exec命令获取错误消息

我正在使用Go来创建CLI.我正在执行一个命令,如果从操作系统中抛出错误,我想打印它.

cmd := exec.Command("abc", "run", pathToFile)
err := cmd.Start()
if err != nil {
    fmt.Printf("Error : %v \n", err)
    os.Exit(1)
}
err = cmd.Wait()
if err != nil {
    fmt.Printf("Error: %v \n", err)
    os.Exit(1)
}
Run Code Online (Sandbox Code Playgroud)

这只给我退出状态代码

Error:  exit status 1 
Run Code Online (Sandbox Code Playgroud)

这不够描述.

当我直接在终端中运行命令时,我会清楚地收到错误消息.

source does not exist 'test.exe'
Run Code Online (Sandbox Code Playgroud)

有没有办法打印邮件?

operating-system cmd exec go

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