inux 下的CP命令及SCP命令

cp命令
该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,就如同DOS下的copy命令一样,功能非常强大。
语法: cp [选项] 源文件或目录 目标文件或目录
说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。
该命令的各选项含义如下:
- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。
- d 拷贝时保留链接。
- f 删除已经存在的目标文件而不提示。
- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
- p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
- r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
- l 不作拷贝,只是链接文件。
需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名是一个已存在的文件名,用cp命令拷贝文件后,这个文件就会被新拷贝的源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。
$ cp - i exam1.c /usr/wang/shiyan1.c
该命令将文件exam1.c拷贝到/usr/wang 这个目录下,并改名为 shiyan1.c。若不希望重新命名,可以使用下面的命令:
$ cp exam1.c /usr/ wang/
$ cp - r /usr/xu/ /usr/liu/ 将/usr/xu目录中的所有文件及其子目录拷贝到目录/usr/liu中。

scp命令
在其他主机上复制一个文件或者文件夹用远程复制命令再好不过了前提是你要知道其他主机的用户名,密码以及你要复制的文件的路径,如果不知道路径可以先远程登录然后退出。
命令格式为:
  scp -r username@192.168.12.12:~/Desktop/Class .

    scp 是远程复制的命令 -r是复制整个文件夹,假设我有个Class文件夹在Desktop(桌面)上,username是你要复制文件所在的主机用户名, 192.168.12.12是那个太主机的IP,后面要有个: 如果知道文件的绝对路径就直接加绝对路径,比如/root/aaa ,在root下有个aaa文件夹。 如果不知道绝对路径就写相对路径,比如这里的~/Desktop/Class,注意前面的~ 后面跟了个 . 可能大家没有注意,这个‘ . ’是代表当前目录,和一般的cp命令一样,如果你想放在其他目录就写其他的目录名,当然也有相对路径和绝对路径之分,和前面一样。
       上面是复制文件夹命令,如果想要复制文件命令就不要-r 命令了,Class后面写上文件名,当然前提是文件在Class中,如果想复制多个文件就用通配符 * 比如Class/* 那么Class中的所有文件就复制过来了,注意这里*只能复制过来文件,而文件夹是不能复制过来的。
如果想将本机的文件或者文件夹复制到目标主机,命令格式不变就是后面的路径颠倒过来
        scp -r filename username@192.168.12.12:~/Desktop/Class
将本机的文件名写在前面,目标路径写在后面,这是复制文件夹的,复制文件同样的格式不用加-r
        当然不管是从哪里复制到哪里,都要输入密码才能成功。

 

 

自己写了一个 cp -avf .. .., 总是提示是否要override,莫名其妙,-f参数不就是不提示吗?

后来才发现 在~/.bashrc中有cp的aliase

vi ~/.bashrc

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

 

崩溃,注掉就可以覆盖copy不用提示了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值