execlまたはexecveを使用してCでのみ拡張子「.txt」のファイルを表示するにはどうすればよいですか?
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
int main(int argc, char **argv) {
( execl("/bin/ls","*.txt",NULL);
return 0;
}
execlまたはexecveを使用してCでのみ拡張子「.txt」のファイルを表示するにはどうすればよいですか?
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
int main(int argc, char **argv) {
( execl("/bin/ls","*.txt",NULL);
return 0;
}
あなたが探しているglob(3)
:
#include <glob.h>
extern char **environ;
int main(int argc, char *argv[]) {
glob_t g={0};
g.gl_offs = 1; /* reserve slot for "/bin/ls" */
glob("*.txt",GLOB_DOOFFS,0,&g);
g.gl_pathv[0] = "/bin/ls";
execve(*g.gl_pathv,g.gl_pathv,environ);
}