为以 exec 启动的进程设置自定义工作目录

2024-04-12

我正在打电话execv在我的 C 代码中启动可执行文件,但我想将其工作目录设置为自定义目录。

例如,在一种情况下,我正在启动ls,但它列出了我原始程序目录中的文件。但我想将工作目录设置为自定义目录。我将如何实现它,这样,我将其设置为/usr/bin and ls将列出该目录中的文件。并且不要给我具体的解决方案ls,这只是一个例子。


Use chdir(2) http://www.kernel.org/doc/man-pages/online/pages/man2/chdir.2.html成功后fork(2),在执行之前:

switch (fork()) {
case 0:
    chdir(newpath); 
    execvp(...);
    break;            
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为以 exec 启动的进程设置自定义工作目录 的相关文章

  • FileStream 构造函数和默认缓冲区大小

    我们有一个使用 NET 4 用 C 编写的日志记录类 我想添加一个构造函数参数 该参数可以选择设置文件选项 WriteThrough http msdn microsoft com en us library system io fileo
  • 如何在 C# / .NET 中创建内存泄漏[重复]

    这个问题在这里已经有答案了 可能的重复 托管代码中是否可能存在内存泄漏 特别是 C 3 0 https stackoverflow com questions 6436620 is it possible to have a memory
  • 在 Xamarin 中隐藏软键盘

    如何隐藏软键盘以便在聚焦时显示Entry在 Xamarin forms 便携式表单项目中 我假设我们必须为此编写特定于平台的渲染器 但以下内容不起作用 我创建自己的条目子类 public class MyExtendedEntry Entr
  • 防止 boost::asio::io_context 在空轮询调用时停止

    此代码调用发布的句柄 boost asio io context ioc boost asio post ioc std cout lt lt lol lt lt std endl ioc poll 而这并没有 boost asio io
  • 与 Qt 项目的静态链接

    我有一个在 Visual Studio 2010 Professional 中构建的 Qt 项目 但是 当我运行它 在调试或发布模式下 时 它会要求一些 Qt dll 如果我提供 dll 并将它们放入 System32 中 它就可以工作 但
  • fprintf() 线程安全吗?

    我正在为野人就餐问题的某些变量编写一个 C 解决方案 现在 我创建线程 每个线程都将 FILE 获取到同一个调试文件 在线程内我正在使用 fprintf 进行一些打印 打印的语句不受任何类型的互斥锁等保护 我没有在调试文件中观察到任何交错行
  • 类的成员复制

    在学习 复制成员 概念时 书中给出了如下说法 此外 如果非静态成员是引用 const 或没有复制赋值的用户定义类型 则无法生成默认赋值 我不太明白这个声明到底想传达什么 或者说这个说法指的是哪一种场景 谢谢 该语句与编译器自动为您编写的类
  • 在 Linux 上的 Python 中使用受密码保护的 Excel 工作表

    问题很简单 我每周都会收到一堆受密码保护的 Excel 文件 我必须解析它们并使用 Python 将某些部分写入新文件 我得到了文件的密码 当在 Windows 上完成此操作时 处理起来很简单 我只需导入 win32com 并使用 clie
  • Visual Studio Code:如何配置 includePath 以获得更好的 IntelliSense 结果

    我是使用 Visual Studio Code 的完全初学者 我不知道我在做什么 我已经四处搜索 也许还不够 但我找不到像我这样的人如何配置的简单解释c cpp properties json每当我单击带有绿色波浪线下划线的行旁边的黄色灯泡
  • 如何在服务器端按钮点击时关闭当前标签页?

    我尝试在确认后关闭当前选项卡 因此我将以下代码放在确认按钮的末尾 但选项卡没有关闭 string jScript ClientScript RegisterClientScriptBlock this GetType keyClientBl
  • C++ php 和静态库

    我创建了一个library a 其中包含 cpp 和 h 文件 其中包含很多类 嵌套类和方法 我想在 php 示例中包含这个静态库并尝试使用它 我想提一下 我是 php 新手 我已经在 test cpp 文件中测试了我的 libray a
  • PHP 致命错误:未找到“MongoClient”类

    我有一个使用 Apache 的网站 代码如下 当我尝试访问它时 我在 error log 中收到错误 PHP Fatal Error Class MongoClient not found 以下是可能错误的设置 但我认为没有错误 php i
  • .NET Core 中的跨平台文件名处理

    如何处理文件名System IO以跨平台方式运行类以使其在 Windows 和 Linux 上运行 例如 我编写的代码在 Windows 上完美运行 但它不会在 Ubuntu Linux 上创建文件 var tempFilename Dat
  • 新任务中使用的依赖注入服务

    我在需要时使用依赖项注入来访问我的服务 但我现在想要创建一个并发任务 但这会由于依赖项注入对象及其生命周期而导致问题 我读过这篇文章 标题 防止多线程 Link http mehdi me ambient dbcontext in ef6
  • 并行运行 make 时出错

    考虑以下制作 all a b a echo a exit 1 b echo b start sleep 1 echo b end 当运行它时make j2我收到以下输出 echo a echo b start a exit 1 b star
  • cout 和字符串连接

    我刚刚复习了我的 C 我尝试这样做 include
  • 每个数据库多个/单个 *.edmx 文件

    我有一个通过 ADO net 数据服务与数据库交互的项目 数据库很大 近 150 个具有依赖关系的表 该项目几年前开始 当时使用的是数据集 现在我们正在转向实体模型关系 由于我们添加了更多需要使用的表 该模型正在不断增长 这是管理这一切的正
  • 您是否将信息添加到每个 .hpp/.cpp 文件的顶部? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 创建新的 C 头文件 源文件时 您会在顶部添加哪些信息 例如 您是否添加日期 您的姓名 文件描述等 您是否使用结构化格式来存储此信息 e g F
  • 将 char[][] 转换为 char** 会导致段错误吗?

    好吧 我的 C 有点生疏了 但我想我应该用 C 来做我的下一个 小 项目 这样我就可以对其进行抛光 并且我已经有不到 20 行的段错误了 这是我的完整代码 define ROWS 4 define COLS 4 char main map
  • ASP.NET Core MVC 视图组件搜索路径

    在此处的文档中 https learn microsoft com en us aspnet core mvc views view components view aspnetcore 2 2 https learn microsoft

随机推荐

  • Silverlight 绑定到 TranslateX

    我有一个简单的 winphone7 应用程序 但我认为这适用于任何 silverlight 基本上我有一个椭圆 我想用平移 X 和 Y 属性来移动它 这是我的尝试
  • 在.net winform中创建圆角容器

    我想在 winform net 中创建圆角容器 我的目标是创建一个容器 这样如果我将任何其他控件放入其中 该控件也将变成圆形 这可能吗 您正在寻找Control Region财产 http msdn microsoft com en us
  • PDF 可以在 Chrome 中呈现,但不能在 Acrobat 中呈现

    PDF 1 7 4 0 obj lt ObjStm N 3 First 14 Length 139 gt gt stream 1 0 2 41 3 76 lt Catalog Version 1 7 Pages 2 0 R gt gt lt
  • Vs2017:查找资源字典时出错

    当我尝试引用我的 app xaml 文件的资源字典时 出现以下错误
  • 使用 Promise 时保留变量的最佳实践[重复]

    这个问题在这里已经有答案了 我是 Promises 的新手 我想知道在沿着链向下的同时保留变量的最佳实践是什么 通过 Promise 连接到 MongoDB 非常简单 connectToMongoDB data done function
  • 奇数耙数据库:迁移输出

    为什么rake db migrate run Execute db schema dump我的输出全部搞砸了 显示 SQL 看起来像这样 ActiveRecord SchemaMigration Load 0 5ms SELECT sche
  • FastAPI,返回带有 sql 查询输出的文件响应

    我正在使用 FastAPI 目前我返回一个 csv 这是我用 pandas 从 SQL Server 读取的 pd read sql 然而 csv 对于浏览器来说相当大 我想用文件响应返回它 https fastapi tiangolo c
  • Java 点与“任何字符”不匹配

    点应该匹配任何字符 那么为什么这个正则表达式不起作用呢 String url http wikipedia org System out println url replace htt Output http wikipedia org S
  • 是否可以将文件附加到 ios 日历事件?

    在 Mac OS 中 可以将文件附加到日历事件并读取 iOS 日历上的 dat 文件 问题 是否可以使用 Event Kit 框架将文件附加到 iOS 日历事件 我在中找不到任何提示事件套件文档 https developer apple
  • 我应该将 std::string 与“string”或“string”进行比较吗?

    考虑这个代码片段 bool foo const std string s return s hello comparing against a const char literal bool bar const std string s r
  • 输入文件点击Chrome

    好的 我有一个文件类型和 id test 的输入元素 当我输入地址栏时 javascript document getElementById test click 会弹出打开文件对话框 以便用户可以决定上传什么 但是 如果将同一行插入到文档
  • Spring AOP:- 在 joinPoint 中获取参数名称为 null

    LoggingAspect java Around allGenericAppServiceImplMethods public Object LoggingAdvice ProceedingJoinPoint joinPoint thro
  • Java Logger 不写入文件

    我正在尝试将 Logger 配置为写入应用程序配置文件夹中的文件 但我无法弄清楚如何执行此操作 这是我在程序启动时用于配置日志输出的函数 private void ConfigureLogger Logger logger Logger g
  • 返回正则表达式中匹配的部分

    在使用的正则表达式中OR 管道 是否有一种方便的方法来获取匹配的表达式部分 Example horse caMel TORTOISe i exec Camel returns Camel 我想要的是caMel 我知道我可以循环遍历选项 而不
  • 单步执行断点时出现编译错误

    每当我遇到断点并尝试跨过它或进入它时 我就开始遇到奇怪的错误 我收到消息 进行了无法编译的编辑 在修复编译错误之前 无法继续执行 这些项目编译得很好 当我没有遇到任何断点时 这种情况就不会发生 我使用的是 Visual Studio 201
  • 使用Haxe宏进行条件编译,而不是#if #end

    假设我们有一个 Local 类 class Local static inline public var logLevel Int 3 以及一些功能 Tool debug s String compiled if logLevel gt 0
  • Bonjour 通过蓝牙无需 Gamekit ?

    我想知道在 iPhone OS 3 0 或更高版本中直接通过蓝牙使用 bonjour 而不使用 GameKit 的可能性 谁能提供任何例子吗 只需宣布服务 就像tc 下面已经说了 https stackoverflow com q 3845
  • Xamarin Forms Entry 调用 Completed 事件

    我目前正在 Xamarin Forms 中开发登录和注册页面 将键盘的完成按钮更改为下一个并继续最后一个按钮后 我不再在 Android 上收到 Completed 事件 在 iOS 上工作正常 在自定义渲染器中 我可以捕获 Control
  • 在 mac os x Sierra 上使用 opencv c++ 编译 hello world

    第一次我无法编译 hello world 我已经遵循了大量如何安装 opencv 的教程 我只有以下示例 include
  • 为以 exec 启动的进程设置自定义工作目录

    我正在打电话execv在我的 C 代码中启动可执行文件 但我想将其工作目录设置为自定义目录 例如 在一种情况下 我正在启动ls 但它列出了我原始程序目录中的文件 但我想将工作目录设置为自定义目录 我将如何实现它 这样 我将其设置为 usr