C 言語プログラムを作成して、現在のディレクトリ内の 644 のアクセス許可を持つすべてのファイルを一覧表示する必要があります。システムコールを使用するためにはsystem()
使用できず、使用する必要があります。execl()
これは、コードで使用した行です。
execl("/usr/bin/find", "find . -maxdepth 1 -perm 644", (char *)NULL);
問題は、コードが現在のディレクトリではなくディスク全体を検索していることです。修正するのを手伝ってくれませんか?
...
case 4:
int status;
switch (fork()){
case -1: quit ("fork",1);
case 0:
execl("/usr/bin/find","find","." ,"-maxdepth" ,"1","-perm", "644",(char *)NULL) ;
exit (200);
default:
wait(&status);
exit(0);
}
}