Как перечислить каталоги первого уровня только в 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: * /: Нет такого файла или каталога

Ответы на вопрос(5)

Ваш ответ на вопрос