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到远程另外一台主机上,可以如下命令。
然后会提示你输入另外那台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 Wlinux 的 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