c ++ копирование каталога в другой каталог (команда linux cp)

Я пытаюсь реализовать команду cp -r, чтобы при вводе пользователя в cp -r dir dir1 dir копировался и вставлялся в dir1. Ниже приведено то, что у меня есть, и он копирует файлы и каталоги внутри каталога, но сам каталог не копирует. Например, когда есть файл1 и каталог ‘a’inside dir, он будет копировать и вставлять только файлы1 и’ a ‘внутри dir1, но не сам каталог dir.
Какие-либо предложения?

-1

Решение

Вы запускаете свой алгоритм на один шаг слишком глубоко в каталог, который копируете: dir_entry = readdir(dir) читает все записи внутри Ваш исходный каталог и, следовательно, сам исходный каталог не копируется.

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

Вместо звонка dirCopy("a", "b") вам нужно начать с выполнения

mkdir("b/a", convertMode("a"));

а потом

dirCopy("a", "b/a");

Таким образом, вам понадобится код, который извлекает последнюю часть имени файла из вашего path так что вы можете добавить его к newPath, Если вам нужна помощь для этого, вы можете посмотреть на этот вопрос: Получить имя файла из пути

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]