在C程序中,如何将包含通配符的路径转换为相应的文件项?
我正在尝试使用通配符实现在C程序中,如何将包含通配符的路径转换为相应的文件项?,c,unix,system-calls,C,Unix,System Calls,我正在尝试使用通配符实现ls命令,*。 我刚刚了解到,大多数shell在执行ls命令时,会将包含*的ls参数转换为相应的条目。 例如,目录foo由a.file、b.file和目录bar组成 然后,目录bar具有c.file、d.file和e.file 并假设当前目录是目录foo 参数*/*转换为以下条目 "bar/c.file", "bar/d.file", "bar/e.file" 程序如何执行此操作?我不知道从哪里开始。和 有许多可能的情况 */../*,./../*,*/*/*/*等 任
ls
命令,*
。
我刚刚了解到,大多数shell在执行ls
命令时,会将包含*
的ls参数转换为相应的条目。例如,目录
foo
由a.file
、b.file
和目录bar
组成然后,目录
bar
具有c.file
、d.file
和e.file
并假设当前目录是目录
foo
参数*/*
转换为以下条目
"bar/c.file", "bar/d.file", "bar/e.file"
程序如何执行此操作?我不知道从哪里开始。和有许多可能的情况
*/../*
,./../*
,*/*/*/*
等
任何建议都会很棒。谢谢你。你当然可以做很多这方面的工作
这样的模式被称为,出于某种原因,我现在不想去挖掘 POSIX提供了编程通配符路径扩展。了解该函数。