Как перечислить каталоги первого уровня только в C?
В терминале я могу позвонитьls -d */
. Теперь я хочуc запрограммируйте это для меня, вот так:
#include <sys/types.h>
#include <sys/wait.h>
#include <stdio.h>
#include <unistd.h>
int main( void )
{
int status;
char *args[] = { "/bin/ls", "-l", NULL };
if ( fork() == 0 )
execv( args[0], args );
else
wait( &status );
return 0;
}
Это будетls -l
все. Тем не менее, когда я пытаюсь:
char *args[] = { "/bin/ls", "-d", "*/", NULL };
Я получу ошибку во время выполнения:
ls: * /: Нет такого файла или каталога