Как установить систему с двойной загрузкой CentOS и Windows?

С командами POSIX и при условии, что имена файлов и каталогов не содержат символов новой строки:

src=/some/dir
dst=/some/other/dir
file_list=/path/to/list.txt
(cd -P -- "$src" && find. |
  tee -- "$file_list" |
  pax -rwdpe -- "$dst")

Пути будут относиться к каталогам $srcили $dst(, которые должны существовать заранее ).

Реализация GNU cp(, найденная в Ubuntu ), имеет параметр -v, который сообщает, что он делает.

LC_ALL=C cp -va -- "$src" "$dst" > "$file_list"

Будет создан list.txt, который содержит что-то вроде:

'/some/dir' -> '/some/other/dir'
'/some/dir/file' -> '/some/other/dir/file'
[...]

Другим вариантом может быть использованиеtar(нестандартной команды, но Ubuntu поставляется с GNU tarпо умолчанию):

(cd -P -- "$src" && tar cf -.) |
  (cd -P -- "$dst" && tar xvf - > "$file_list")
0
12.06.2020, 23:31
0 ответов

Теги

Похожие вопросы