, Как скопировать папку путем перезаписи существующей папки и удалить все старое содержание в Linux?

При устранении неполадок сетевого подключения всегда следует выполнять одни и те же действия по порядку. Проверьте, можете ли вы:

  • пинговать адрес обратной связи 127.0.0.1

  • пинговать свой собственный IP-адрес

  • пинговать машину в той же локальной сети (если есть другие машины)

  • пинговать IP-адрес вашего шлюза

  • ] пинговать машину в Интернет. Попробуйте использовать как IP-адреса, так и FQDN, например ping 104.16.116.182 и ping unix.stackexchange.com . Если вы можете пропинговать IP, но не полное доменное имя, ваши настройки DNS в / etc / resolv.conf неверны, и вам нужно добавить туда правильный сервер имен (вы можете добавить 8.8.8.8, который является DNS Google, и он будет работать нормально).

(адаптировано из моего ответа на этот вопрос )

1
09.08.2018, 12:43
2 ответа

Это один раз.rm -fr olddir/* ; cp -a newdir/* olddir

0
27.01.2020, 23:32

Использованиеrsync:

rsync -av --delete source/ target

Это удалит все содержимое каталога target, не совпадающее с содержимым каталога source, и дополнительно скопирует туда содержимое source.

Замыкающий /в конце source/важен, так как без него вы получите каталог в target/sourceвместо того, чтобы делать targetкопию source.

Параметр-a(или--archive)заставляет rsyncкопировать метки времени и другие метаданные, а параметр-v(или--verbose)заставляет rsyncработать подробно. Без --deleteникакое существующее содержимое в targetне будет удалено (, если оно не имеет того же имени, что и вещи в source, и в этом случае оно будет обновлено ).

2
27.01.2020, 23:32

Теги

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