如何从 C++ 中的系统 PATH 获取绝对文件路径
How to get the absolute file path from the system PATH in C++?
如果文件在系统 PATH 中,是否可以按文件的名称获取文件的完整路径?
例如,我的 PATH 中有cmake
。我可以使用C++文件系统库获取它的完整路径吗?我只想跨平台检查文件是否存在。
Boost.Process 在 search_path 中具有此功能。下面是一个小的 linux 示例测试搜索路径,用于查找系统路径中sh
可执行文件的位置。
#include <iostream>
#include <cstdlib>
#include <boost/process/search_path.hpp>
#include <string>
int main()
{
auto myPath = boost::process::search_path("sh");
std::cout << "sh executable path " << myPath << std::endl;
}
要测试的实时环境:https://wandbox.org/permlink/c3TbKq4sliBjxRVc
输出:
开始
sh 路径 "/bin/sh"
0 完成
相关文章:
- 获取文件数据预处理器宏
- 如何在Windows内核中获取文件大小
- 从 C 中的变量获取文件的路径,C++
- 如何使用 C/C++ 和 system() 系统调用以外的其他方法在 Linux 中获取文件功能?
- 如何使用 jpeglib.h 获取文件是否为 JPEG 类型
- 谁能告诉我,程序中的错误是什么?该程序仅用于获取文件扩展名
- 我需要通过窗口句柄(HWND)获取文件,我该怎么办?
- 如何用C++部分地获取文件中的行
- 使用内置的Windows方法获取文件夹的内容
- 在 Apache Velocity 模板语言中获取文件目录
- 如何在C#或C++中获取文件或文件夹的有效权限?有什么 API 吗?
- 对字符求和并减去以获取文件
- 从 FutureAccessList 同步获取文件夹路径
- 通过HTTPS从POCO StreamCopier获取文件下载进度
- 如何使用C 17获取文件大小
- getline 无法获取文件的第一行
- 如何使用 Win API 获取文件夹中的文件列表(带过滤器)
- 无法从零MQ ZMQ_SERVER套接字中获取文件描述符
- HttpQueryInfo 获取文件大小
- 通过文件资源管理器获取文件夹目录