Directory.GetCurrentDirectory() 在 Linux 上不起作用?

2024-04-20

因此,我尝试创建一个需要读取名为“scripts”的子文件夹中的脚本的应用程序。我的代码有问题:

string script = Console.ReadLine();
string path = Directory.GetCurrentDirectory();
string sciptpath  = path + "/scripts/" + script;

这在 Windows 上运行良好。但在 Linux 上(使用 Mono Runtime 运行),它会转到当前用户的主目录...而不是可执行文件的目录。这是一个错误吗?有人可以提出解决方法吗?


并不是说它需要“修复”,而是当前目录不是您想象的那样。当前目录是相对路径“具有焦点”的目录。无论您的 EXE 位于何处,当前目录都可以位于其他任何位置,甚至可能在执行期间发生更改。

你想要的是:

string path = Path.GetDirectoryName(Application.ExecutablePath);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Directory.GetCurrentDirectory() 在 Linux 上不起作用? 的相关文章

  • 在运行时配置 ASP.NET 会话状态

    我们有一个使用 SQL Server 会话状态的 ASP NET 网站 状态配置在Web config like
  • Qml 中的 FileDialog 在发布中不起作用

    我正在与以下项目合作Qt Quick Control 2 当我尝试在调试模式下运行软件时 FileDialog qml 可以完美打开 但是当我将其部署为发布模式时 它无法工作 这是我的代码 import QtQuick 2 4 import
  • 无法使用 MinGW C++ 在 NetBeans IDE 7.3 中编译“Hello World”

    我正在尝试制作一个简单的 Hello World 在 NetBeans IDE 7 3 中使用 MinGW 作为我的 C 编译器来编写程序 我遇到了构建失败的情况 但我不知道为什么 这是我的编译器设置 Family MinGW 基本目录 C
  • 如何设置属性选择器的值 Expression>

    我需要使用模式工厂的想法将 Person 类实体中的实体属性 Address 与 FactoryEntities 类中的表达式 linq 相关联 看看这就是我所拥有的并且我想要做的 Address address new Address a
  • 如何创建 .bat 文件来运行 C# 代码?

    我需要的是 我有一个 C 代码 我想构建它以便在桌面上创建一个 bat 文件 因此 当我从桌面运行这个 bat 文件时 它应该执行 C 代码 有没有办法在编译之前更改 c 项目的设置或属性 以便创建应运行此 c 代码的 bat 文件 将 C
  • 提高 ASP.NET/C# 编译速度的最佳方法是什么?

    更新 请将您的答案集中在硬件解决方案上 您使用什么硬件 工具 插件来提高 ASP NET 编译和首次执行速度 我们正在寻找固态硬盘来加快速度 但现在价格确实很高 我现在有两个 RAID 0 的 7200 rpm 硬盘 但我对性能不再满意 所
  • 在 Asp.net Web API 中处理 CORS 预检

    我的架构中有三个应用程序 它们位于同一服务器上 但具有不同的端口号 A Token Application port 4444 Asp net WebApi B API Application port 3333 Asp net WebAp
  • C# 中的异步方法如何工作?

    我在我的一些项目中使用异步方法 我喜欢它 因为它使我的应用程序更具可扩展性 但是 我想知道异步方法如何在后台真正工作 NET 或 Windows 如何知道调用已完成 根据我进行的异步调用的数量 我可以看到创建了新线程 但并不总是 为什么 此
  • 这个对象的内存会是什么样子?

    我想知道这个类 它的对象 的内存布局是什么样的 class MyClass string myString int myInt public MyClass string str int i myString str myInt i MyC
  • C++ 中的静态虚函数

    我有一个基类和一个派生类 我想更改基函数 同时保持它们静态 因为它们应该作为静态传递给其他函数 我怎样才能做到这一点 ATL 框架通过将基类设为模板 然后让派生类将其类类型作为模板参数传递 从而绕过了无虚拟静态的限制 然后 基类可以在需要时
  • 如何存储生成的格式化 C 字符串

    这是一个新手问题 为了创建格式化的 C 字符串 我使用printf like int n 10 printf My number is i 10 但是 怎么样 int n 10 char msg My number is i 10 prin
  • 使用 .NET Core Razor Pages 将文件下载到浏览器

    使用 ASP NET Razor Pages 我尝试将文件下载到浏览器 在页面 html 中 使用这样的链接效果很好 href DownloadableFiles testB csv download newname gt Download
  • 如何获取 TFS 2013 中所有用户的列表

    我正在使用 Team Foundation Server TFS 2013 和 Visual studio 2012 我需要 TFS 中所有用户的列表 有没有办法使用C 获取TFS中的所有用户 从TFS 2010获取用户列表 您可以尝试使用
  • 枚举和枚举类之间的区别[重复]

    这个问题在这里已经有答案了 谁能解释一下两者之间的区别 enum Type1 type2 And enum class Type1 type2 我经常使用前者 可能太频繁而没有足够的封装 但我从未使用过第二个例子 Thanks enum A
  • 验证仅适用于数组的第一项

    给定这个模型代码 Required Display Name Name public string Name get set 以下查看代码有效 Html LabelFor model gt model Name Html TextBoxFo
  • 更改子进程中的 iostream

    现在 我正在开发一个项目 其中我需要启动一个子进程来使用 C 在 Linux 中执行一个新程序 并且我需要重定向标准输入和输出 就像在 C 中一样 它们是cin and cout 到一个文件 这意味着在子进程中 标准输入和输出都是文件 子进
  • 如何在c#中打印全尺寸图像

    我正在尝试用 C 打印图像 它是由 Adob e Acrobat 从 PDF 创建的完整 8 5x11 尺寸的 tiff 当我使用下面的代码用 C 打印它时 它垂直打印正确 但水平打印不正确 水平方向被推了大约半英寸 我将图像的原点设置为
  • 如何将 typedef 结构传递给函数?

    此刻我正在努力 void avg everything 但这给了我错误 error subscripted value is neither array nor pointer 当我今天早些时候收到此错误时 这是 因为我没有正确地将 2D
  • 如何在 C++ 中打印变量的名称? [复制]

    这个问题在这里已经有答案了 可能的重复 在C中获取变量名称的编程方法 https stackoverflow com questions 1623111 programmatic way to get variable name in c
  • 在.Net中使用ObjectCache缓存对象并设置过期时间

    我陷入了一个场景 我的代码如下 更新 它不是关于如何使用数据缓存 我已经在使用它及其工作 它是关于扩展它 以便该方法在到期时间和从外部源获取新数据之间不会进行调用 object string this GetDataFromCache ca

随机推荐

  • 单个构建步骤的 TeamCity 构建日志

    当 teamcity 执行 MSBuild 步骤时 构建日志具有可折叠 可扩展的层次结构 我有一个很大的构建步骤 它运行一个 powershell 脚本 生成的构建日志很大 需要很长时间才能加载 有没有一种方法可以让 teamcity 将单
  • 使用python sklearn增量训练随机森林模型

    我使用下面的代码来保存随机森林模型 我正在使用 cPickle 保存训练后的模型 当我看到新数据时 我可以增量训练模型吗 目前 训练集大约有2年的数据 有没有办法再训练两年并将其 某种程度上 附加到现有保存的模型中 rf RandomFor
  • 如何在没有 SSRS 服务器的情况下使用报表查看器控件执行 .rdl 报表?

    我正在尝试设置一个网页 用户可以在其中选择要运行的 rdl 文件 它将打开报表查看器控件 ASPX 加载报表定义文件 运行它并显示报表 到目前为止 我发现 本地 报告只能接受来自代码的数据源 因此您必须手动执行数据库代码 这将很痛苦 因为报
  • 为什么这个简单的 C# 试用不起作用 [重复]

    这个问题在这里已经有答案了 这会产生条纹而不是点 为什么 我正在尝试绘制单个像素 还尝试了另一种方法 使用 fillrectangle 它也没有给出所需的结果 得到的是条形而不是点 protected override void OnPai
  • 如何在异步代码中处理 CPU 密集型任务

    我正在做一些需要异步方法的繁重处理 我的一个方法返回一个字典列表 在将其添加到另一个可等待对象之前需要对其进行大量处理 IE def cpu bound task here record some complicated preproces
  • ExoPlayer - 奇怪的阿拉伯语/波斯语字幕格式

    我正在尝试创建一个带字幕的视频播放器 除了一件事之外 一切都已设置并正常工作 我的阿拉伯语字幕没有正确显示 它们的符号和东西看起来很奇怪 像这样 这是我的带有字幕的 ExoPlayer 设置 Uri srt Uri parse http d
  • Exchange Web 服务:UseDefaultCredentials 属性

    这个微软页面 http msdn microsoft com en us library exchange ff597939 28v exchg 80 29 aspx表示通过将 UseDefaultCredentials 属性设置为 tru
  • 为方法创建 IObservable 的好方法是什么?

    比方说 我们有一堂课 public class Foo public string Do int param 我想创建一个可观察的值 这些值是由Do方法 一种方法是创建一个正在调用的事件Do并使用Observable FromEvent创建
  • 如何使用 Spring 注入键值属性文件?

    我有一个键值属性文件 其中包含错误代码及其错误消息 我想在应用程序启动时注入此文件 以便我可以在注入的属性上进行查找 而无需读取该文件 下面只是伪代码 里面有什么吗Spring可以创建这个设置吗 Value location classpa
  • 如何解决 AutoMapper 错误? (堆栈溢出异常!)

    我在用自动映射器 http automapper codeplex com EF 实体 gt POCO 用于以下类 public class Category public int CategoryID get set public str
  • 如何避免 fread() 将日期信息导入为 IDate?

    我最初编写了一个脚本 该脚本通过约 70k 次迭代进行计算 我使用 rbind 将结果 缝合 在一起 1 次迭代可能会产生 0 到多行的结果 所以我不认为预先分配输出会使感觉 为了加快速度 我将其分成 4 个单独的脚本 每个脚本在单独的会话
  • 为什么 wm_concat 在这里不起作用?

    我有这个查询 SELECT OBJECT ID from cr object group entries vw where object group id IN SELECT ITEM FROM TABLE CR FN SPLIT STRI
  • Java Swing 取消无限循环

    我在 Swing 中遇到了无限循环问题 做了一些研究并遇到了 SwingWorker 线程 但不太确定如何实现它们 我已经拼凑了一个简单的程序来显示问题 一个按钮启动无限循环 我希望另一个按钮停止它 但当然 由于 Swing 单线程问题 另
  • 选择一个元素及其所有后代元素

    选择一个元素and它的所有后代元素 media media color f00 我是否只能使用一个选择器 而不是用逗号分隔两个选择器 我正在寻找一种更有效的方式来输入此内容 With XPath https www w3schools co
  • Swing 中带有小字体的字符串的边界

    关于计算应绘制到 Swing 组件中的字符串的大小 宽度或高度 存在许多 许多 问题 并且提出了许多解决方案 然而 我注意到这些解决方案中的大多数都not对于小字体可以正常工作 下面是一个MCVE https stackoverflow c
  • 如何在 Winforms 中将枚举转换为布尔值以进行数据绑定?

    是否有可能做到这一点 我需要使用 this ControlName DataBindings Add 所以我除了绑定我之外无法定义逻辑enum值对一个bool 例如 DataClass Data Type enum EDIT 我需要绑定Da
  • WordPress 403/404 错误:您无权访问此服务器上的 /wp-admin/themes.php

    一些背景 这周我建立了六个博客 全部使用 Wordpress 2 92 通过 Hostgator 与 Fantastico 一起安装在婴儿鳄鱼计划上 我为每个博客使用相同的主题 热图 2 5 4 和插件 他们都已启动并运行 没有任何问题 今
  • 如何在 Swing 中使 JCheckBox 成为只读?

    我想要一列复选框指示持久程序的步骤 在这种情况下 用户不应更改复选框 它们由后台进程更改 不幸的是 如果我打电话setEnable false 我使复选框不仅只读 而且变暗 如何实现 从复选框中删除 MouseListener 和 Key
  • AngularJS 显示或隐藏表单元素的方式是什么?

    这个问题是 Tami Wright 在邮件列表中提出的 我正从 JQuery 进入 AngularJS 世界 但不太确定如何翻译特定的用例 这在 JQuery 中是不费吹灰之力的 该用例是根据同一表单中选择元素的更改来启用 禁用或隐藏 显示
  • Directory.GetCurrentDirectory() 在 Linux 上不起作用?

    因此 我尝试创建一个需要读取名为 scripts 的子文件夹中的脚本的应用程序 我的代码有问题 string script Console ReadLine string path Directory GetCurrentDirectory