разделит входные пары на два отдельных слова, чтобы их можно было использовать в качестве входных данных для
вопрос строится изпредыдущий вопрос, Я не хочу редактировать предыдущий вопрос, потому что тогда я буду вводить новую сложность в вопрос, который уже имеет так много комментариев. Это исказило бы контекст текущих ответов.
Следующий файл сопоставления называетсяmapping.txt
src/a/ tgt/aye/
src/b tgt/b/
src/c/ tgt/c
Структура исходного файла выглядит следующим образом
/tmp/testzone/src/a/afile.txt
/tmp/testzone/src/b/bfile.txt
/tmp/testzone/src/c/cfile.txt
Первое, что мы делаем, это создаем целевую структуру каталогов на основеmapping.txt
файл,
cut -f 2 mapping.txt | tr '\n' '\0' | xargs -0 mkdir -p
Который создает целевую структуру каталогов
/tmp/testzone/tgt/aye/
/tmp/testzone/tgt/b/
/tmp/testzone/tgt/c/
Далее мы бежим
xargs --arg-file mapping2.txt cp -a
Который, кажется, помещает содержимое исходного каталога в целевой каталогc
каталог. Это не верно. Следует использоватьmapping.txt
файл для копирования из источника в цель построчно.
/tmp/testzone/tgt/aye/
/tmp/testzone/tgt/b/
/tmp/testzone/tgt/c/a/afile.txt
/tmp/testzone/tgt/c/aye/
/tmp/testzone/tgt/c/b/bfile.txt
/tmp/testzone/tgt/c/c/cfile.txt
Что может быть причиной этой проблемы?