测试的那些事

Linux 学习笔记(四)

上一篇 / 下一篇  2010-05-04 10:12:18 / 个人分类:Linux

cp:复制

[root@linux~]#cp [-adfilprsu]来源档(source目的档(destination

[root@linux~]#cp [options] source1 source2 source3 directory

参数:

-a复制所有内容,包括文件和文件夹,和文件的属性

-d来源档的属性为连结档(快捷方式),复制连结档属性(快捷方式指向的文件),不是复制快捷方式本身。本质:创建一个快捷方式,并指向来源档指向的文件

-s目的档复制成为连结档(快捷方式),不管来源档A是真实文件还是快捷方式,复制完成后的文件成为快捷方式,并指向A本质:创建一个快捷方式,并指向来源档(范例四)

-f为强制的意思,若有重复或其他疑问时,先不回询问用户,直接复制

-i若目的档(destination)已经存在时,在覆盖时会先询问

-r递回持续复制,用于文件夹的复制行为;文件夹的权限会改变

-u:若destinationsource旧才会更新destination!常用于文档更新

注意:如果来源档有两个以上,则最后一个目的档一定要目录才可以

 

范例一:将家目录下的.bashrc复制到/tmp下,并更名为bashrc

[root@linux~]#cd /tmp

[root@linux~]#cp ~/.bashrc bashrc

[root@linux~]#cp –i ~/.bashrc bashrc

cp:overwrite ‘bashrc’?n

#加上参数i,会在复制文件重复时提示。

 

范例二:将/var/log/wtmp复制到/tmp底下

[root@linux~]#cd /tmp

[root@linux~]#cp /var/log/wtmp . ç想要复制到当前文件夹,最后的.不能忘

#如果要将档案的所有特性都一起复制过来,可加入参数-a

 

范例三:复制/etc这个目录下的所有内容到/tmp底下

[root@linux~]#cp /etc/ /tmp

cp:omitting directory ‘/etc’ ç如果是目录,不能直接复制,需要加上参数-r

[root@linux~]#cp –r /etc/ /tmp

#注意:-r可以复制文件夹,复制后的文件夹权限会相应改变

#将权限也一起复制:cp –a /etc /tmp

 

范例四:将复制的bashrc建立一个连接档(快捷方式)

[root@linux~]#cp –s bashrc bashrc_slink

[root@linux~]#ls –l bashrc*

-rw-r--r-- 2 root root 395 jul 18 22:08 bashrc

1rwxrwxrwx 2 root root 395 jul 18 22:08 bashrc_slink -> bashrc

#bashrc_slink是由-s参数造成。创建了一个快捷方式

 

范例六:bashrc_slink复制成为bashrc_slink2(区分-d –s的用法)

[root@linux~]#cp bashrc_slink bashrc_slink2

[root@linux~]#cp –d bashrc_slink bashrc_slink3

[root@linux~]#cp –s bashrc_slink baschrc_slink4

[root@linux~]#ls –l bashrc_slink*

lrwxrwxrwx 1 root root 6 jul 18 22:31 bashrc_slink – > bashrc (该文件原本存在)

-rw-r--r--1 root root 395 jul 18 22:31 bashrc_slink2 (只复制了一个快捷方式,无任何意思)

lrwxrwxrwx 1 root root 6 jul 18 22:31 bashrc_slink3 – > bashrc (-d用法,复制快捷方式,并指向bashrc_slink指向的文件)

lrwxrwxrwx 1 root root 6 jul 18 22:31 bashrc_slink4 – > bashrc_slink(-s用法,复制快捷方式,并指向源文件)

 

范例七:将家目录的.bachrc.bash_history复制到/tmp

[root@linux tmp]#cp ~/.bashrc ~/.bashrc_history /tmp

#可以将多个资料一次复制到同一个目录去!

 

复制档案时,一般复制后文件的权限就是操作者的权限。由于这个特性,在进行备份时要注意特殊权限档案,例如密码档以及一些设定档。不能直接以cp复制,需要加入-a-p参数。

另外,如果要复制档案给其他使用者,也必须要注意到档案的权限(包括读、写、执行以及档案拥有者),否则,其他人没有权限进行操作。

复制前的注意点:

1.      是否需要完整的保留来源档案的资讯(包括文件和属性)

2.      来源档案是否为连结档(快捷方式)

3.      来源档是否为特殊的档案,例如FIFLsocket

4.      来源档是否为目录?

rm(移除档案或目录)

参数:

-f:就是force意思,强制删除

-i:互动模式,在删除前会询问使用者

-r:递回删除。常用于目录的删除。

 

范例一:删除一个不为空的目录

[root@linux tmp]#mkdir test

[root@linux tmp]#cp ~/.bashrc test/

[root@linux tmp]#rm

 

范例二:删除一个带有-开头的档案

[root@linux tmp]#ls *aa*

-aaa-

[root@linux tmp]#rm –aaa-

rminvalid option --a ç因为“-”是参数

[root@linux tmp]#rm ./-aaa-  ç正确方法

[root@linux tmp]#rm –rf test 会将test目录下的文件和子目录全部删除,后果严重


TAG: Linux linux

 

评分:0

我来说两句

Open Toolbar