Вам не нужно записывать это в C , потому что он будет работать на терминале. BASH (в Unix) или PowerShell (в Windows) - идеальные инструменты для достижения ваших целей.
Если вы абсолютно должны напишите это на C ответ будет зависеть от того, разрешено ли вам запускать внешние процессы в вашей программе C или нет.
Если вы являетесь разрешено запускать внешние процессы, затем использовать execv
или одного из его родственников, чтобы запустить внешний cp
процесс, чтобы выполнить задачу за вас.
Если вы не разрешено запускать внешние процессы, поэтому вам придется написать программу на C, чтобы рекурсивно копировать содержимое вашего каталога.Эта программа будет зависеть от платформы, на которую вы ориентируетесь.