一乐电子

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

微信扫码登录

手机号码,快捷登录

手机号码,快捷登录

搜索
查看: 5010|回复: 2

linux之cp/scp命令+scp命令详解

[复制链接]
发表于 2017-2-9 19:45 | 显示全部楼层 |阅读模式
linux之cp/scp命令+scp命令详解  ) F8 M" ]& S: V0 Z$ y2 O

0 ?3 _9 e2 [% x4 `2 d4 M/ N
: \, ~4 {2 l4 Z( X: f- `0 [

名称:cp

使用权限:所有使用者

使用方式:

cp [options] source dest

cp [options] source... directory

说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。

把计

-a 尽可能将档案状态、权限等资料都照原状予以复制。

-r 若 source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。

-f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。

范例:

将档案 aaa 复制(已存在),并命名为 bbb :

cp aaa bbb

将所有的C语言程式拷贝至 Finished 子目录中 :

cp *.c Finished

命令:scp

不同的Linux之间copy文件常用有3种方法:

第一种就是ftp,也就是其中一台Linux安装ftp Server,这样可以另外一台使用ftp的client程序来进行文件的copy。

第二种方法就是采用samba服务,类似Windows文件copy 的方式来操作,比较简洁方便。

第三种就是利用scp命令来进行文件复制。

    scp是有Security的文件copy,基于ssh登录。操作起来比较方便,比如要把当前一个文件copy到远程另外一台主机上,可以如下命令。
scp /home/daisy/full.tar.gz root@172.19.2.75:/home/root
然后会提示你输入另外那台172.19.2.75主机的root用户的登录密码,接着就开始copy了。
    如果想反过来操作,把文件从远程主机copy到当前系统,也很简单。
http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gifscp root@/full.tar.gz 172.19.2.75:/home/root/full.tar.gz home/daisy/full.tar.gz, S  O. ~1 H; G* {% q) O: |" ~

% l6 B& P" Y9 H8 R- @6 W
linux 的 scp 命令 可以 在 linux 之间复制 文件 和 目录;
% o  h9 ^6 b) }1 l3 E7 z; F
' j  W4 D8 b6 K) y==================
0 x- S9 c2 a3 I0 N2 I) I% q, n8 ^scp 命令 % }( ~/ p: f1 @6 i, F" [7 @
================== , E+ G& A; D# u0 X. p
scp 可以在 2个 linux 主机间复制文件;
4 f7 F2 @2 m; a4 C
4 F+ ?) G; c9 @5 P9 [! \7 w0 g命令基本格式:
4 ~/ x3 X+ S* p. s! N. I       scp [可选参数] file_source file_target
& b) `" ?/ P. q: _) Y
: Z; o+ S6 C; E======
+ q3 q  M  S, f: s3 @1 I7 @, b" _从 本地 复制到 远程
1 ~' W, R8 l" D* }4 O' q2 n======
/ P$ i5 v. [8 [& X* 复制文件: ! V! {7 K( g7 g& T, p# ^
        * 命令格式:
7 \1 ]" B! s4 {% g, a                scp local_file remote_username@remote_ip:remote_folder # c% w3 n. j# t9 c# o
                或者 6 e# L" J2 C: U
                scp local_file remote_username@remote_ip:remote_file
/ @7 b. b2 m1 Y# e" V8 s                或者 & y& v/ C$ v7 \) K$ g/ X* t& ~
                scp local_file remote_ip:remote_folder
9 S; y( k% a7 r* F6 V6 Z                或者
( c  G/ U8 z) u- V. W' I                scp local_file remote_ip:remote_file 0 i  W( M' z* A) X

% j& j( F* c% Y% {0 y                第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
- M1 z( N7 {0 M4 R                第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;
, H5 r. k# R( L' m# x+ X( f( ^1 r        * 例子:
  C. M0 E1 l4 D  {6 M                scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music 3 L/ r: {( l; }& m
                scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music/001.mp3
" s4 h' R7 }- U, B3 ^, d                scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music ' c6 p8 a/ b! l5 w6 A6 b; V
                scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music/001.mp3 - u, w* f  ?% ]8 ~0 ^- u9 ^

6 n7 F: f" p3 \  N7 I& C6 v* 复制目录: 4 T& I! h& j# W; \; z. V
        * 命令格式: 7 a1 |9 @, V% C5 t
                scp -r local_folder remote_username@remote_ip:remote_folder & z) t& N" x( y% ~# h. r
                或者 , q  F% \% x4 y% T- r9 Y, u( e
                scp -r local_folder remote_ip:remote_folder 1 I" V1 z/ a, m2 l0 v

+ S, t, \" {0 ^! d! K( }' W. S                第1个指定了用户名,命令执行后需要再输入密码; ! j$ O5 Y4 I! l
                第2个没有指定用户名,命令执行后需要输入用户名和密码; / g6 G7 q8 e  e; o$ F: C
        * 例子: 5 T; ^: z$ w9 e
                scp -r /home/space/music/ root@www.cumt.edu.cn:/home/root/others/ , N$ ^5 x9 Z- h9 S
                scp -r /home/space/music/ www.cumt.edu.cn:/home/root/others/ : P! T& \7 u# T; t. t

7 |1 C2 |- @$ g0 |; o: s: i# H                上面 命令 将 本地 music 目录 复制 到 远程 others 目录下,即复制后有 远程 有 ../others/music/ 目录
! y3 K) v* _' S! T4 B- |1 |. J
, a: V( m( s! G- \
) z: R% H' d% g( O======
3 Z0 a' B1 d  ]* X$ o8 t- B6 P8 M从 远程 复制到 本地 ) j; y5 ^$ o7 _; N2 B# U0 r$ g5 u9 z. A
======   c5 H/ h- e6 p' F1 x3 s
从 远程 复制到 本地,只要将 从 本地 复制到 远程 的命令 的 后2个参数 调换顺序 即可; 9 t1 ^. B+ }" ?& Q  j
" q  v3 ]1 ^$ B  j# X2 [
例如:
+ \% E7 B" ^; V9 H. k! T        scp root@www.cumt.edu.cn:/home/root/others/music /home/space/music/1.mp3
4 Y8 N2 a3 ?' x        scp -r www.cumt.edu.cn:/home/root/others/ /home/space/music/
最简单的应用如下 :
) U5 F0 Y, T4 y& y# ~5 P% h' f: Y7 j9 g. R8 m% ]' N" F
scp 本地用户名 @IP 地址 : 文件名 1 远程用户名 @IP 地址 : 文件名 2
# B, d, g3 q8 y" T. ]  u# z7 K
" j! G+ h7 C& M- o  l[ 本地用户名 @IP 地址 :] 可以不输入 , 可能需要输入远程用户名所对应的密码 .
% G& N( {+ G6 D% d. m  B  e& E5 y5 f1 s& g) \' J: ?$ _5 j
可能有用的几个参数 : 3 H8 `' r5 g2 n$ y! a* ]
  Q+ F1 j$ E% t9 R2 u0 b; E
-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 . * o. ~5 I+ v" Y* ^0 g- r- w" l- x
: K1 v" v" W% {+ v" N# d
-C 使能压缩选项 .
+ ?. D- o; [9 K1 o
4 A+ r! }5 C/ x7 ?-P 选择端口 . 注意 -p 已经被 rcp 使用 .
( G. X0 c7 q5 h" h
/ l+ {: r* }( t9 [8 k' q1 ^-4 强行使用 IPV4 地址 . 6 m; {- l( o2 c  `/ Q2 {0 o
  y9 ^; [. y- m* C) Q* o7 C* U/ `" ^
-6 强行使用 IPV6 地址 .

4 K$ k$ H! Z: T2 O! f; b
注意两点:
6 e5 G& D: ]; c+ x- w7 }1.如果远程服务器防火墙有特殊限制,scp便要走特殊端口,具体用什么端口视情况而定,命令格式如下:- H( w! T6 F" e6 \6 H/ a  M- P
#scp -p 4588 remote@www.abc.com:/usr/local/sin.sh /home/administrator
7 |$ ?) c+ O1 Z2.使用scp要注意所使用的用户是否具有可读取远程服务器相应文件的权限。

$ `+ l& h' J' V7 s  m5 H7 A/ M6 a, J' z1 m0 t8 N: i
7 |; x" F, {4 U

$ O8 G% w8 y: Q& L- x- C一个不会敲代码的程序员' z2 o; G( U; A+ s( ?6 t

1 C( V5 v( B3 {+ V4 J1 ]; H/ h
发表于 2017-2-10 21:03 | 显示全部楼层
只会用winscp
回复

使用道具 举报

 楼主| 发表于 2017-2-11 17:26 | 显示全部楼层
lily2350660 发表于 2017-2-10 21:034 [/ r5 ?2 K& O
只会用winscp

' z; i' l4 m: `* H7 ]这个看一下就明白 了没必要去学7 l, {. M( [  g, ~, X0 b

! M/ ~5 j' h$ o
回复

使用道具 举报

本版积分规则

QQ|一淘宝店|手机版|商店|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2026-1-12 08:12 , Processed in 0.034139 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表