我正在设计一个模拟 shell 程序,我不能完全模仿“cd”命令。我试过 chdir(),但没有用,所以我继续尝试更改环境变量“PWD=”
这就是我所拥有的,我认为这可能很接近。(如果我错了或与 chdir() 更接近,请纠正我)
else if (command == "cd")
{
string pathEnv = "PWD=";
string newDir;
cin >> newDir;
pathEnv+=newDir;
cout << pathEnv << endl;
putenv(pathEnv.c_str());
}
希望命令是“cd /user/username/folder”,而我的 pathEnv 变量是“PWD=/user/username/folder”,这可能会改变目录?
非常感谢任何见解。