我有以下问题:
system("cd mypath");
当我在 C 编程语言终端中尝试此操作时,什么也没做。 我需要帮助。
system
函数创建一个全新的进程,与调用该函数的进程分开。
每个进程都有自己的当前工作目录,并且此工作目录仅特定于该进程。更改一个进程的工作目录不会将其更改为另一个进程。
如果要更改自己进程的工作目录,请使用特定于操作系统的功能。就像Linux(和其他POSIX系统,如macOS)上的chdir
,或者Windows中的SetCurrentDirectory
。
请注意,如果您在自己的进程中更改目录,则调用程序的 shell 或控制台的目录将不会更改,因为它也是与您的进程分开的进程。
看起来只是做
chdir("path");
或
system("chdir PATH"); //linux