{"id":349642,"date":"2021-10-07T14:52:13","date_gmt":"2021-10-07T11:52:13","guid":{"rendered":"https:\/\/en.buradabiliyorum.com\/how-to-copy-directories-recursively-with-scp-cloudsavvy-it\/"},"modified":"2021-10-07T14:52:13","modified_gmt":"2021-10-07T11:52:13","slug":"how-to-copy-directories-recursively-with-scp-cloudsavvy-it","status":"publish","type":"post","link":"https:\/\/buradabiliyorum.com\/en\/how-to-copy-directories-recursively-with-scp-cloudsavvy-it\/","title":{"rendered":"#How to Copy Directories Recursively with scp \u2013 CloudSavvy IT"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a348b42ed941\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #dd3333;color:#dd3333\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #dd3333;color:#dd3333\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a348b42ed941\" checked aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-copy-directories-recursively-with-scp-cloudsavvy-it\/#Running_scp_Recursively\" >Running scp Recursively<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-copy-directories-recursively-with-scp-cloudsavvy-it\/#Using_rsync_Instead\" >Using rsync Instead<\/a><\/li><\/ul><\/nav><\/div>\n<p><strong>&#8220;#How to Copy Directories Recursively with scp \u2013 CloudSavvy IT&#8221;<\/strong><\/p>\n<div id=\"article-content-area\">\n<img loading=\"lazy\" decoding=\"async\" class=\"type:primaryImage alignnone size-full wp-image-4038\" srcset=\"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2017\/07\/add8ac45.png?width=398&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1 400w, https:\/\/www.cloudsavvyit.com\/p\/uploads\/2017\/07\/add8ac45.png?width=1198&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1 1200w\" sizes=\"auto, 400w, 1200w\" src=\"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2017\/07\/add8ac45.png?width=1198&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1\" alt=\"Bash Shell\" width=\"1400\" height=\"600\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>A common problem when working with files is <a href=\"https:\/\/buradabiliyorum.com\/en\/category\/download-scripts-themes-apps\/\" data-internallinksmanager029f6b8e52c=\"9\" title=\"Download Scripts &amp; Themes &amp; Apps\" target=\"_blank\" rel=\"noopener\">app<\/a>lying operations recursively, or to every sub-directory in the entire folder. The <code>scp<\/code>\u00a0utility is used to transfer files and directories to remote servers, and supports recursive operations.<\/p>\n<h2 role=\"heading\" aria-level=\"2\"><span class=\"ez-toc-section\" id=\"Running_scp_Recursively\"><\/span>Running scp Recursively<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>While it is sometimes faster for large transfers to be done in a single archive known as a\u00a0<a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/wiki.debian.org\/TarBall\">tarball<\/a>, most of the time the overhead of transferring individual files doesn\u2019t matter.<\/p>\n<p>Copying recursively with <code>scp<\/code>\u00a0is easy: simply use the <code>-r<\/code>\u00a0flag in addition to anything else you had added:<\/p>\n<pre>scp -r localpath user@remote:\/remotepath<\/pre>\n<p>Note that this is explicitely lowercase <code>-r<\/code>, unlike a lot of other commands that use or require <code>-R<\/code>.<\/p>\n<p>This will act like a drag and drop into <code>\/remotepath\/<\/code>, copying the contents of <code>localpath\/<\/code>\u00a0to the remote and placing them in <code>\/remotepath\/localpath\/<\/code>.<\/p>\n<p>If you want to instead sync <code>localpath\/<\/code>\u00a0and <code>\/remotepath\/<\/code>, you will have to transfer the folder to the parent folder of <code>\/remotepath\/<\/code>, the destination. In this case, that would be <code>\/<\/code>, the root directory.<\/p>\n<p>This also will follow symbolic links in the local path when resolving files, but will not necessarily create those same links on the remote server. For example, copying a brand new file to and from\u00a0<code>\/etc\/nginx\/sites-enabled<\/code>\u00a0will not automatically place it in\u00a0<code>\/etc\/nginx\/sites-available<\/code>\u00a0on the remote.<\/p>\n<h2 role=\"heading\" aria-level=\"2\"><span class=\"ez-toc-section\" id=\"Using_rsync_Instead\"><\/span>Using rsync Instead<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Linux has multiple tools to handle this job, and one of the better ones is <code>rsync<\/code>, which does everything <code>scp<\/code>\u00a0can do, but has many more options and is much faster to boot. It also doesn\u2019t copy files that haven\u2019t been changed, making it a great tool for continously \u201csyncing\u201d two directories to each other without re-transferring data unnecessarily.<\/p>\n<p><code>rsync<\/code>\u00a0works basically the same as <code>scp<\/code>, with a few more options included to specify the settings:<\/p>\n<pre>rsync -a -essh localpath\/ user@remote:\/remotepath\/<\/pre>\n<p>The <code>-a<\/code>\u00a0flag specifies\u00a0<em>archive mode<\/em>, which turns on a lot of commonly used options all at once. The <code>-e ssh<\/code>\u00a0flag sets up <code>rsync<\/code>\u00a0to transfer over SSH.<\/p>\n<p><strong>RELATED:<\/strong> <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/www.howtogeek.com\/135533\/how-to-use-rsync-to-backup-your-data-on-linux\/\"><strong><em>How to Use rsync to Backup Your Data on Linux<\/em><\/strong><\/a>\n<\/div>\n<blockquote><p><strong><span style=\"color: #ff6600;\">If you liked the article, do not forget to share it with your friends. Follow us on\u00a0<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/news.google.com\/publications\/CAAqBwgKMLG0nwswvr63Aw\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Google News<\/a><\/span>\u00a0too, click on the star and choose us from your favorites.<\/span><\/strong><\/p><\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\">For forums sites go to <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/forum.buradabiliyorum.com\/\" target=\"_blank\" rel=\"noopener\">Forum.BuradaBiliyorum.Com<\/a><\/span><\/strong><\/p>\n<\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\"><strong>If you want to read more like this article, you can visit our <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/en.buradabiliyorum.com\/technology\/\" target=\"_blank\" rel=\"noopener\">Technology category.<\/a><\/span><\/strong><\/p>\n<\/blockquote>\n<p><span style=\"color: black;\"><a style=\"color: #ff9900;\" href=\"https:\/\/www.cloudsavvyit.com\/14333\/how-to-copy-directories-recursively-with-scp\/\" target=\"_blank\" rel=\"noopener\">Source<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;#How to Copy Directories Recursively with scp \u2013 CloudSavvy IT&#8221; A common problem when working with files is applying operations recursively, or to every sub-directory in the entire folder. The scp\u00a0utility is used to transfer files and directories to remote servers, and supports recursive operations. Running scp Recursively While it is sometimes faster for large&#8230;<\/p>\n","protected":false},"author":1,"featured_media":349643,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2017\/07\/add8ac45.png","fifu_image_alt":"","footnotes":""},"categories":[18],"tags":[],"class_list":["post-349642","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology"],"_links":{"self":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/349642","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/comments?post=349642"}],"version-history":[{"count":0,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/349642\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media\/349643"}],"wp:attachment":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media?parent=349642"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/categories?post=349642"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/tags?post=349642"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}