gpt4 book ai didi

c++ - 使用c++程序在shell中更改目录

转载 作者:行者123 更新时间:2023-11-27 23:25:54 26 4
gpt4 key购买 nike

我需要在 shell 中更改目录

using namespace std;
int main(int argc, char **argv)
{
cout<<system("cd ..")<<endl;
return 0;
}

现在我明白这行不通了。我的问题是,我的其他选择是什么。谢谢

最佳答案

每个进程(你的程序也是如此)都有自己的当前目录。当您调用 system("cd ..") 时,将执行一个单独的进程(在 ubuntu 中它是 bash 我相信)并且该进程正在执行命令 cd ..,因此它正在更改自己的当前目录,然后结束。你想要做的是改变你自己的进程(程序)的当前目录,你应该做的是:

#include <unistd.h>
chdir("..");

显然将 include 指令放在文件的开头:)

关于c++ - 使用c++程序在shell中更改目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9553993/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com