2012-02-12 95 views

回答

1

整理。

有一个工作目录,这是一个完整的路径(包括驱动器号)。

但每个驱动器都有一个“当前目录”,它影响驱动器相对路径(形式为D:name,驱动器规格后面没有反斜杠)。 IIRC,它们存储在环境变量表中。

链接是,只要工作目录更改,shell就会自动更新当前目录。但其他程序不一定这样做。

PATH搜索对当前目录或工作目录没有影响。它们是从父级继承的,除非在启动新进程时明确指定。请参阅this related question

0

“的当前目录是从原来的目录,这是从该进程启动的一个显着。” ......如指出here

顺便说一句,关于你的问题的标题,没有电流或工作目录中,有一个叫做“当前工作目录”的东西(同样来自上面的链接)。

在您的应用程序中,您无法确定应用程序启动时当前工作目录的位置,但如果需要,您可以使用set it

(我的链接与.net相关,这可能不是您选择的技术)。

0

“当前目录”是活动进程的属性。

AFAIK,“当前目录”,“当前工作目录”和“工作目录”是完全相同的东西的所有同义词。他们是当然是是在Linux,Java(可以说是.Net)的土地上。在Windows中,然而,一个进程可以为每个驱动器不同的 “工作目录”:

程序的 “初始目录” 是典型的一个:

  • 你开始它的目录我i n(来自命令行),

  • 该目录下。exe文件位于(如果它从Windows资源管理器中双击),或

  • 通过桌面连接指定的(如果您双击Windows快捷方式)的目录

换句话说,“初始目录”和“exe文件所在目录”可能相同或不同。

  • 正在运行的进程的“初始目录”与“路径”没有直接关系。

路径有助于OS 找到 .exe文件(以加载并运行它),但它是不用于分配“初始目录”

'希望可以帮到