Intereting Posts
Не устанавливать $? на ненулевое значение на Control + C ALSAMIXER – удалил alsa * из / bin – нужно восстановить Downprade PHP 5.4 -> 5.3 на CentOS 5.10 Параметры установки CentOS 6 «По умолчанию» Изменение размеров окон в i3 с использованием только клавиатуры Почему ошибка загрузки ядра отсутствует? Как удалить неиспользуемые архитектуры, драйверы и т. Д. Из заголовков при создании пользовательского ядра linux? Как я могу ограничить разрешения на вино? Как я могу взаимодействовать с домашним маршрутизатором через устройство в локальной сети с помощью ssh? Как выделить больше места для обмена и увеличения его размера больше, чем Рам? Заменить косую черту «/» в файле ssh логин с паролем невозможно – приглашение не предлагается – слишком много ошибок аутентификации Как включить все символы шрифтов STIX в Firefox? Что означает «неизвестный» пользователь в выводе команды «last»? Как скопировать / tar-файлы из папки с огромным количеством файлов?

Можно ли создать многоуровневый каталог?

Используя mkdir() (функция C), я могу создать 1-уровневый каталог, если я хочу создать каталог multi_level, например:

 folder/subfolder/subsubfolder 

Является ли это возможным? если да, то как?

 mkdir --parents folder/subfolder/subsubfolder mkdir -p folder/subfolder/subsubfolder 
 mkdir -p /dir1/dir2/dir3 

Для получения дополнительной информации см. Справочную страницу:

 man mkdir 

Я не пробовал, но что-то вроде:

 #include <libgen.h> void mkdir_recursive(char *path) { char *subpath, *fullpath; fullpath = strdup(path); subpath = dirname(path); if (strlen(subpath) > 1) mkdir_recursive(subpath); mkdir(fullpath); free(fullpath); } 

или:

 #include <string.h> void mkdir_recursive(char *path) { char *subpath, *fullpath; fullpath = strdup(path); subpath = basename(path); if (strlen(subpath) > 0) mkdir_recursive(subpath); mkdir(fullpath); free(fullpath); } 

Первый способ всегда должен работать. Второй способ должен работать только в том случае, если ваш путь начинается с завершающей косой черты, потому что он будет циклически перемещаться по путям, начиная с точки.

В случае отсутствия -p списки аргументов обычно анализируются в том порядке, в котором они отображаются в командной строке, таким образом:

 mkdir adam adam/bertil adam/bertil/caesar 

функционально эквивалентно

 mkdir -p adam/bertil/caesar