c - 如何将包含通配符的路径转换为 ​​C 程序中相应的文件条目?

标签 c unix system-calls

我正在尝试使用通配符* 实现ls 命令。 我刚刚了解到,大多数 shell 在执行 ls 命令时会将包含 * 的 ls 参数转换为相应的条目。
例如,目录fooa.fileb.file和目录bar组成。
然后,目录barc.filed.filee.file
并假设当前目录是目录 foo

参数 */* 被转换为以下条目。

"bar/c.file", "bar/d.file", "bar/e.file"

程序如何执行此操作?我不知道从哪里开始。还有
有很多可能的情况。

*/../*../../**/*/*

任何建议都会很棒。谢谢..

最佳答案

您当然可以使用 glob()做很多这样的工作。

这样的模式被称为globs ,出于某种原因,我现在不会挖掘。 :)

关于c - 如何将包含通配符的路径转换为 ​​C 程序中相应的文件条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16018183/

相关文章:

c - Linux C 文件的 md5sum

linux - awk输出不会打印到文件

linux - 模拟内核socket编程中select()和poll()的作用

c - mmap sys_call 的 MAP_FIXED 常量

c - tcp客户端如何理解服务器状态码

c - 了解 C 语言中的复杂指针示例代码

C - execvp() 第二个参数

bash - 如何编写调用带有构造文件名参数的 grep 命令的 bash 函数

shell - 使用awk计算磁盘空间

linux - Linux 中的 fget_light 有什么作用?