我想在我的应用程序运行后让我的应用程序设置当前工作目录,例如:
$ pwd
/my/directory
$ dotnet MyApp.dll
$ pwd
/another/place/somewhere
如何在C#中以跨平台方式使用.NET Core ?
我查看了Environment.CurrentDirectory
和Directory.SetCurrentDirectory
,但对于Directory.SetCurrentDirectory
的文档中所示,对于这两个目录,工作目录都在应用程序退出时重置为其原始状态。
应用程序终止时,工作目录将还原到其原始位置(启动进程的目录)。
答案 0 :(得分:0)
你不能。
当前工作目录是每个进程的属性。
要在终端中进行更改,您需要找到一种方法来告诉终端进行此操作。终端启动的程序可以更改其自己的当前目录,但不能更改调用方终端的当前目录。
这就是cd
是Shell内置的原因。如果是外部程序,则无法更改外壳程序/终端的工作目录。