代码之家  ›  专栏  ›  技术社区  ›  Matt Jameson

在c++中运行命令,然后在该程序中运行命令

  •  -1
  • Matt Jameson  · 技术社区  · 6 年前

    在c++中,有没有一种方法可以在使用system()打开的程序中运行命令,所有这些都是通过编程实现的。

    打开git bash

    system("start \"\" \"c:\\Program Files\\Git\\bin\\sh.exe\" --login -i");
    

    然后在新打开的gitbash窗口中cd返回两个目录

    "cd ../../" 
    
    2 回复  |  直到 6 年前
        1
  •  2
  •   apple apple    6 年前

    假设您在windows上,start命令可以设置工作路径 /D

    start /D "./../.." "c:/Program Files/Git/in/sh.exe" --login -i
    
        2
  •  0
  •   J C Gonzalez    6 年前

    bash 为什么不从C++程序中启动一个BASH脚本;脚本中的所有命令都将被执行。

    system("/bin/bash -c myscript.sh");
    

    Bash将启动,但是脚本文件中的命令 myscript.sh 将被执行。

    但是,我会使用不同的方法,而不是 system(...) . 看到了吗 exec*(...) 函数族,以及 fork() this question and answers .