Raymond Chen для обнаружения, почему Windows является способом, которым это; часть содержания является очень технической разработчиком в C и по моей голове, но большая часть его не.
Чиновник блог Microsoft от Ваших команд продукта - Exchange, Word, ISA, SBS, и т.д.
Для вредоносного программного обеспечения Graham Cluley превосходен
Это должно абсолютно соответствовать скрытым файлам. / в конце источника говорит "каждый файл в соответствии с этим каталогом". Тем не менее, тестирование и исследование подтверждает Вас. Это - глупое поведение.
"Ответ" должен добавить точку в конец источника:
scp -rp src/. user@server:dest/
Реальный ответ должен использовать rsync.
Можно попробовать rsync. Это лучше подходит для этого задания:
rsync-av src/user@server:dest/
(И его страницу руководства стоит прочитать.)
Не помещайте наклонную черту после исходного каталога. Ваш код был бы похож на это:
scp -rp src user@server:dest/
Это создаст каталог 'src' под 'dest' на удаленной машине со всеми включенными скрытыми файлами. Это, вероятно, не точно, что Вы хотите, но это скопирует скрытые файлы в src.
Ни одно из вышеперечисленных решений scp у меня не помогло. Однако я обнаружил, что на cygwin работает следующее: scp -r каталог / * хост: каталог Символ «*» соответствует всем видимым файлам и пропускает невидимые.
Следующее поможет решить проблему, это было полностью протестировано в нашей среде непрерывной интеграции
scp -rp src/. user@server:dest/
example scp -rp /usr/src/code/. content001@172.11.11.11:/usr/dest/code/
Надеюсь, это поможет
Если вход по паролю отключен на удаленном компьютере, и единственный способ входа - через открытый ключ, то вы можете использовать это:
$ rsync -av -s 'ssh -i /path/to/your/private/SSH/key' --progress user1@remote.host:/remote/source/directory/ /local/destination/directory/
Он также копирует скрытые файлы.
Также обратите внимание, что «user1» должен иметь разрешения на чтение этих файлов, например, вы не можете копировать ssh-папки других пользователей этим методом.
Для копирования только скрытых файлов используйте эту команду
scp -rp /path_to_copy_hidden/.[!.]* user@host:/path_to_paste/
На самом деле игра представляет собой тег /.[!] *
, который относится к файлам, начинающимся с .
(скрытые)
Поскольку scp
поддерживает регулярные выражения, это поможет вам:
scp -rp src / (* |. *) User @ server: dest /
Из-за уязвимости CVE-2018-20685, /.
трюк больше не может использоваться с scp
.
Однако распределенный контроль версий, такой как git
или Hg Mecurial , будет обрабатывать скрытые файлы, как любые другие файлы. Вот команды для моего любимого Hg Mercurial :
server:$ sudo apt install mercurial
client:$ sudo apt install mercurial
client:$ hg init src
client:$ cd src/
client:$ hg addr
client:$ hg com -m "first commit"
client:$ cd
client:$ hg clone src ssh://user@server/dest/
Последующие изменения необходимо будет снова зафиксировать с помощью клиента: $ hg com -m "commit message"
, а затем отправить их с помощью клиент: команда $ hg push
. Подробнее о продвижении изменений можно узнать из этой шпаргалки по Hg Mercurial .