scp 的全写是 “secure copy”, 即安全复制。Linux 下的 cp 指令主要用作本机复制档案及目录, scp 的作用差不多, 主要分别是 scp 输入的档案来源或档案目的地可以是远端电脑, 而且是透过 ssh 将资料加密再复制。
先看看以下简单例子, 以下 scp 指令会将 /var/www/html/images/ 目录下所有档案, 复制到 remote_host 里面的 /home/phpini/images/ 目录:
$ scp /var/www/html/images/* phpini@remote_host:/home/phpini/images
以上 scp 指令会用 phpini 作为登入帐号, 透过 ssh 登到 remote_host 服务器, 再将本机 /var/www/html/images/ 目录下所有档案, 复制到 remote_host 的 /home/phpini/images/ 目录。而初次使用这个帐号时, scp 会询问 remote_host 服务器下 phpini 帐号的密码, 就如同登入 ssh 一样。
那里在远端复制档案到本机, 做法跟 cp 指令一样, 只要将上面两个参数对调, 例如:
$ scp phpini@remote_host:/home/phpini/images/* /var/www/html/images
在两台远端服务器间复制档案一样可以, 例如:
$ scp phpini@remote_host:/home/phpini/images/* phpini@remote_host02:/home/phpini/images
以上指令会从 remote_host 的 /home/phpini/images/ 目录, 复制所有档案到 remote_host02 服务器下的 /home/phpini/images/ 目录。