linux之cp/scp命令+scp命令详解 4 B- g* \: Z- ~$ l' L( Y
- J% R' j1 v1 D1 A
( j% Q5 a# D& q; f9 B
名称: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到远程另外一台主机上,可以如下命令。
然后会提示你输入另外那台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- k% f% T" f( l* I' e
r L8 ]" F3 o2 Plinux 的 scp 命令 可以 在 linux 之间复制 文件 和 目录;
6 u$ A& r6 o1 z
4 K5 a u; o" H7 k0 K" `2 k
==================
, Y2 k. q' l" P% |- m( c# }scp 命令
* y$ C2 d* d# D: f0 k; i% |
==================
6 J! F4 D0 s* q; ?; d. kscp 可以在 2个 linux 主机间复制文件;
1 P0 |' ~6 r. U5 J4 }
; ]: k& f/ b9 u命令基本格式:
7 r) r3 P' W9 a scp [可选参数] file_source file_target
/ i. K5 n: Q% d8 C; e, s
0 i& d, _, r) F% }7 D4 w======
# g! i. W& _ h* M1 N4 s
从 本地 复制到 远程
- A. R7 t2 N5 @$ {% @3 d======
7 B& g9 y, v; G! {0 Z0 i! L* 复制文件:
- K* ^( u9 b1 B6 _7 {$ c
* 命令格式:
$ H7 C1 c+ ]* x* D
scp local_file remote_username@remote_ip:remote_folder
/ b! i4 l% d! x8 Q- ^
或者
# {. R, A1 k! B) p3 P# { scp local_file remote_username@remote_ip:remote_file
- V9 o. d$ Q) m, s# ? 或者
7 s( U1 U8 o% A( a# p$ z scp local_file remote_ip:remote_folder
( V6 Y% L5 c- C% F1 U" F
或者
( U3 h0 X8 [& d) r: ?
scp local_file remote_ip:remote_file
/ K3 O# C9 ?% J/ \0 F6 k
9 d* r$ t8 l2 F$ @ E" k! `1 h 第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
/ A' c) h# x" h 第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;
/ d2 L. q+ }" k& b) ? * 例子:
4 X9 I! }3 a/ O5 ^
scp /home/space/music/1.mp3
root@www.cumt.edu.cn:/home/root/others/music
1 C" M( T2 [* A
scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music/001.mp3
* U& X+ d" V$ ^2 G$ p scp /home/space/music/1.mp3
www.cumt.edu.cn:/home/root/others/music
+ }9 u y; O' b" e6 x$ H, B scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music/001.mp3
5 h/ v7 v% a# P* M& X0 F# `8 ~+ Z2 S! n$ x, M5 w
* 复制目录:
5 R3 d( P( N1 o3 y) B * 命令格式:
3 N9 W- T* z3 f# N1 b$ g6 r
scp -r local_folder remote_username@remote_ip:remote_folder
' b* v8 E, S: O+ Z, Q1 O 或者
, T' q# Q7 l9 r( q
scp -r local_folder remote_ip:remote_folder
8 v1 z8 ~/ {" ]' k" C
) y6 ?! n3 O6 S1 A& @1 A2 M 第1个指定了用户名,命令执行后需要再输入密码;
+ J* f# s9 M0 X( K( Z1 u 第2个没有指定用户名,命令执行后需要输入用户名和密码;
4 D$ |6 B/ T$ a1 l: s+ o; V9 S2 G * 例子:
9 [; ]' ?' |3 _/ }# y: B! g. u
scp -r /home/space/music/
root@www.cumt.edu.cn:/home/root/others/
" U! K7 y3 @+ h! \ scp -r /home/space/music/
www.cumt.edu.cn:/home/root/others/ 8 Y5 j; |( @! _/ ~
8 b5 W8 J& U, a6 z$ A5 g
上面 命令 将 本地 music 目录 复制 到 远程 others 目录下,即复制后有 远程 有 ../others/music/ 目录
/ e. X8 c$ d9 Z: n$ ]) q/ \, Q
0 O: T) W4 g5 r8 e+ z
$ a: ?" O0 B0 e# Y======
9 L7 W/ L* i6 @. U# t从 远程 复制到 本地
% [& g# \0 D) f. @% j======
, P7 | m- c5 Y6 a% V从 远程 复制到 本地,只要将 从 本地 复制到 远程 的命令 的 后2个参数 调换顺序 即可;
\9 [- y3 X$ Y
3 Y, I+ y6 G4 u7 J例如:
: J. i4 {& f# C4 q, I0 R
scp
root@www.cumt.edu.cn:/home/root/others/music /home/space/music/1.mp3
8 E! X1 h' v; ~2 A8 N6 S) k
scp -r
www.cumt.edu.cn:/home/root/others/ /home/space/music/
最简单的应用如下 :
4 M' J ?9 B+ r' a8 W. |" s5 O( \7 I( D( L4 k2 T& p# E. Y
scp 本地用户名 @IP 地址 : 文件名 1 远程用户名 @IP 地址 : 文件名 2
# r0 I6 h: i; j2 k. Y9 e; v2 h8 M5 p. S3 O$ K
[ 本地用户名 @IP 地址 :] 可以不输入 , 可能需要输入远程用户名所对应的密码 .
4 U% ?1 q+ x5 O0 i ]3 V' y4 k3 c% y
可能有用的几个参数 : % C9 W: U* `1 m' s- F, d
2 [7 R& i# G6 _1 U$ r z o
-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .
& t4 r& v+ P0 a2 r6 {! P1 K. A
-C 使能压缩选项 . 6 `" G) `& V9 I$ k: e$ [
/ F% ?4 p5 I j) g
-P 选择端口 . 注意 -p 已经被 rcp 使用 .
5 A6 s8 M7 D1 B9 G8 e/ K& |
2 n0 X* Y0 O2 x+ Y9 |* b-4 强行使用 IPV4 地址 .
6 S, a* q9 J6 [+ W! \
y0 `2 y. x1 t$ R" [1 x5 f3 p-6 强行使用 IPV6 地址 .
% b; b( x( L* ]$ d+ X) J% m注意两点:
+ T2 @: B4 }2 \* V1.如果远程服务器防火墙有特殊限制,scp便要走特殊端口,具体用什么端口视情况而定,命令格式如下:
8 V! }- @$ C& M, C8 o
#scp -p 4588
remote@www.abc.com:/usr/local/sin.sh /home/administrator
% h3 ?; U& W6 |2.使用scp要注意所使用的用户是否具有可读取远程服务器相应文件的权限。
' d' ]( J! ^- f9 V1 {) _
) d' A2 W5 R4 Y$ j5 S
4 s: y4 M/ L* _# \3 [- G