`

ubuntu copy命令

阅读更多
ubuntu copy命令

cp(copy)命令

该命令的功能是将给出的文件或目录拷贝到另一文件或目录中。

语法: cp [选项] 源文件或目录 目标文件或目录

说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。

该命令的各选项含义如下:

- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。

- d 拷贝时保留链接。

- f 删除已经存在的目标文件而不提示。

- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。

- p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。

- r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。

- l 不作拷贝,只是链接文件。

  需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名已存在,用cp命令拷贝文件后,这个文件就会被新源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。

 

例如:将/home/wally/test中 test.c 的文件复制到/local/arm 中,命令为:

cd /wally/test

ls

sudo cp -i test.c /local/arm

 

补充:

-a :相当于 -pdr 的意思;
-d :若来源档为连结档的属性(link file),则复制连结档属性而非档案本身;
-f :为强制 (force) 的意思,若有重复或其他疑问时,不会询问使用者,而强制复制;
-i :若目的档(destination)已经存在时,在覆盖时会先询问是否真的动作!
-l :进行硬式连结 (hard link) 的连结档建立,而非复制档案本身;
-p :连同档案的属性一起复制过去,而非使用预设属性;
-r :递回持续复制,用于目录的复制行为;
-s :复制成为符号连结档 (symbolic link),亦即‘捷径’档案;
-u :若 destination 比 source 旧才更新 destination !
最后需要注意的,如果来源档有两个以上,则最后一个目的档一定要是‘目录’才行!
范例:
范例一:将家目录下的 .bashrc 复制到 /tmp 下,并更名为 bashrc
[root@linux ~]# cd /tmp
[root@linux tmp]# cp ~/.bashrc bashrc
[root@linux tmp]# cp -i ~/.bashrc bashrc
cp: overwrite `basrhc'? n
# 重复作两次动作,由于 /tmp 底下已经存在 bashrc 了,加上 -i 参数,
# 则在覆盖前会询问使用者是否确定!可以按下 n 或者 y 呢!
# 但是,反过来说,如果不想要询问时,则加上 -f 这个参数来强制直接覆盖!

范例二:将 /var/log/wtmp 复制到 /tmp 底下
[root@linux tmp]# cp /var/log/wtmp . <==想要复制到目前的目录,最后的 . 不要忘
[root@linux tmp]# ls -l /var/log/wtmp wtmp
-rw-rw-r-- 1 root utmp 71808 Jul 18 12:46 /var/log/wtmp
-rw-r--r-- 1 root root 71808 Jul 18 21:58 wtmp
# 注意到了吗?!在不加任何参数的情况下,档案的所属者会改变,连权限也跟着改变了~
# 这是个很重要的特性!要注意喔!还有,连档案建立的时间也不一样了!
# 如果您想要将档案的所有特性都一起复制过来,可以加上 -a 喔!
[root@linux tmp]# cp -a /var/log/wtmp wtmp_2
[root@linux tmp]# ls -l /var/log/wtmp wtmp_2
-rw-rw-r-- 1 root utmp 71808 Jul 18 12:46 /var/log/wtmp
-rw-rw-r-- 1 root utmp 71808 Jul 18 12:46 wtmp_2
# 了了吧!整个资料特性完全一模一样ㄟ!真是不赖~这就是 -a 的特性!

范例三:复制 /etc/ 这个目录下的所有内容到 /tmp 底下
[root@linux tmp]# cp /etc/ /tmp
cp: omitting directory `/etc' <== 如果是目录,不能直接复制,要加上 -r 的参数
[root@linux tmp]# cp -r /etc/ /tmp
# 还是要再次的强调喔! -r 是可以复制目录,但是,档案与目录的权限会被改变~
# 所以,也可以利用 cp -a /etc /tmp 来下达指令喔!

范例四:将范例一复制的 bashrc 建立一个连结档 (symbolic link)
[root@linux tmp]# ls -l bashrc
-rw-r--r-- 1 root root 395 Jul 18 22:08 bashrc
[root@linux tmp]# cp -s bashrc bashrc_slink
[root@linux tmp]# cp -l bashrc bashrc_hlink
[root@linux tmp]# ls -l bashrc*
-rw-r--r-- 2 root root 395 Jul 18 22:08 bashrc
-rw-r--r-- 2 root root 395 Jul 18 22:08 bashrc_hlink
lrwxrwxrwx 1 root root 6 Jul 18 22:31 bashrc_slink -> bashrc
# 那个 bashrc_slink 是由 -s 的参数造成的,建立的是一个‘捷径’,
# 所以您会看到在档案的最右边,会显示这个档案是‘连结’到哪里去的!
# 至于那个 bashrc_hlink 有趣了!建立了这个档案之后, bashrc 与 bashrc_hlink
# 所有的参数都一样,只是,第二栏的 link 数改变成为 2 了~而不是原本的 1 喔!
# 这两种连结的方式的异同,我们会在下一章里面进行介绍的!

范例五:若 ~/.bashrc 比 /tmp/bashrc 才复制过来
[root@linux tmp]# cp -u ~/.bashrc /tmp/bashrc
# 这个 -u 的特性,是在目标档案与来源档案有差异时,才会复制的。
# 所以,比较常被用于‘备份’的工作当中喔! ^_^

范例六:将范例四造成的 bashrc_slink 复制成为 bashrc_slink_2
[root@linux tmp]# cp bashrc_slink bashrc_slink_2
[root@linux tmp]# 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:48 bashrc_slink_2
# 这个例子也是很有趣喔!原本复制的是连结档,但是却将连结档的实际档案复制过来了
# 也就是说,如果没有加上任何参数时,复制的是原始档案,而非连结档的属性!
# 若要复制连结档的属性,就得要使用 -d 或者 -a 的参数了!

范例七:将家目录的 .bashrc 及 .bash_history 复制到 /tmp 底下
[root@linux tmp]# cp ~/.bashrc ~/.bash_history /tmp
# 可以将多个资料一次复制到同一个目录去!

分享到:
评论

相关推荐

    ubuntu下的copy命令

    Ubuntu下的Copy命令是指在Ubuntu系统下,对文件进行拷贝、重命名等操作的命令。该命令的名称为cp命令,cp命令的功能是将给出的文件或目录拷贝到另一文件或目录中。 cp命令的语法为:cp [选项] 源文件或目录 目标...

    Ubuntu下终端命令

    ### Ubuntu 下终端命令详解 #### 一、引言 在 Linux 操作系统中,终端(Terminal)是用户与操作系统交互的重要工具之一。本文将重点介绍在 Ubuntu 系统下的常用终端命令及其用法,帮助用户更好地掌握这些命令,...

    ubuntu命令缩写大全

    本文将详细介绍Ubuntu中常见的命令缩写及其全称,帮助用户更好地理解和记忆这些命令。 1. `man`:Manual,用于查看命令的手册页,获取详细使用方法。 2. `pwd`:Print working directory,打印当前工作目录。 3. `...

    Ubuntu的Linux命令

    ### Ubuntu Linux 命令详解 #### 一、目录与文件操作 - **cd (Change Directory)** - `cd`:切换至用户的家目录。 - `cd ..`:切换至上一级目录。 - `cd /`:切换至根目录。 - `cd ~`:切换至当前登录用户的...

    ubuntu/linux下实现自己的命令

    在ubuntu/linux中写一个新的操作系统接口:模仿Windows 命令接口 为Unix/Linux操作系统建立兼容的Windows/DOS命令接口,文件与目录命令; 具体命令:DIR(my_ls), RD(my_rd),CD,MD(my_md), DEL,MOVE(my_move),REN(my_...

    ubuntu文件系统管理命令

    在深入探讨Ubuntu文件系统管理命令之前,我们先简要了解Ubuntu操作系统。Ubuntu是一种基于Linux内核的操作系统,因其用户友好性和强大的社区支持而广受欢迎。对于任何Linux或Ubuntu用户而言,掌握基本的文件系统管理...

    ubuntu命令

    ### Ubuntu命令基础知识点详解 #### 一、基本概念与用途 Ubuntu是一款基于Linux的操作系统,广泛应用于服务器和个人电脑。对于初学者来说,掌握基本的Ubuntu命令是非常重要的,它可以帮助用户高效地管理和操作系统...

    Ubuntu系统设置公钥身份验证

    在 Ubuntu 系统中,我们可以使用 ssh-keygen 命令生成密钥对。该命令将生成私钥(id_rsa)和公钥(id_rsa.pub)。私钥是用户的私钥,需要保护好,不能随便使用。公钥可以传给对方供认证使用。 将公钥上传至服务器 ...

    Ubuntu离线安装openssh7.5安装包及安装流程

    你可以访问Ubuntu的官方网站或者使用apt命令下载对应的.deb包,例如: ```bash sudo apt-get download openssh-server=7.5* ``` 下载完成后,将安装包复制到目标Ubuntu机器上。如果目标机器没有网络,可以通过USB...

    Ubuntu下OpenSSH安装包

    这可以通过`ssh-copy-id`命令实现,例如: ```bash ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote_host ``` 最后,确保你的防火墙规则允许SSH流量。在Ubuntu中,如果你使用的是`ufw`防火墙,可以输入: ```bash ...

    ubuntu技术整理

    在 Ubuntu 中,使用 SCP (Secure Copy Protocol) 可以安全地在两台主机之间传输文件。 **命令示例**: ```bash lvchunhua@lvchunhua:~/workspace/webHob/hob$ scp -r webHob root@10.239.47.206:/home/build-sunyl ...

    让ubuntu终端支持鼠标粘贴的安装包

    通常,这可以通过`dpkg`命令或者Ubuntu的图形化软件管理器来完成。安装完成后,gnome-terminal应该会自动应用新的功能,让用户在终端中更加高效地工作。 这个功能的实现可能涉及到对gnome-terminal内部的事件处理...

    sh代码-ubuntu 常用命令

    在这里,我们将会探讨`main.sh`和`README.txt`两个文件可能包含的Ubuntu常用命令及其用途。 `main.sh`很可能是一个包含了多种Ubuntu命令的脚本文件。在Bash脚本中,常见的命令有: 1. **cd (Change Directory)**:...

    3. Ubuntu系统中文化、安装中文输入法、解决VNC上ubuntu后无法复制粘贴问题

    VNC连接Ubuntu,将windows上文字可复制粘贴到Ubuntu上 输入命令行 $ autocutsel $ sudo apt install autocutsel 完成安装后即可将本机内内容复制粘贴到VNC里 ...注:记得使用sudo执行命令哦 方法二

    Ubuntu-install-Subversion-client.rar_Ubuntu!

    - **标签与分支**:`svn copy`命令用于创建分支和标签,分别代表项目的不同版本或开发路径。 ### 7. 阅读资料 "3Microsoft Word - Ubuntu下安装Subversion客户端.pdf"这份文档可能包含了更多关于在Ubuntu上安装和...

    secureCRT连接Ubuntu出现远程系统拒绝访问

    在IT行业中,SSH(Secure Shell)是一种用于在网络设备之间安全传输数据和命令的协议,而SecureCRT是一款流行的终端模拟器,常被用作Windows系统连接Linux服务器的工具,如Ubuntu。当你尝试使用SecureCRT连接Ubuntu...

    如何查看dd命令的拷贝进度

    DD 命令是 Linux 中一个非常常用的命令,用于 binary copy,可以用于硬盘克隆等操作。通常,使用 DD 命令时,我们需要等待命令完成,进程退出。但是,当我们需要拷贝的数据量非常大的时候,这个过程可能会很漫长。...

    Hadoop ubuntu 9.10 下的 SSH 免登陆

    3. **复制公钥**:使用`ssh-copy-id`命令将本地的公钥复制到其他所有节点的`~/.ssh/authorized_keys`文件中。例如,如果你有一个名为`node2`的节点,你可以运行`ssh-copy-id node2`。 4. **配置SSH**:编辑`/etc/...

    Ubuntu指令大全

    **功能描述**:`cp`(copy)命令用于复制文件或目录。 - **基本语法**: ``` cp [选项] 源 目标 ``` - **选项说明**: - `-a` 保留源文件的所有属性。 - `-r` 复制目录及其子目录。 - `-f` 强制覆盖已存在的...

    ubuntu不同机器之间建立互信.docx

    然后,使用`ssh-copy-id`命令将公钥发送到B机器。假设B的用户名是“sweet”,IP地址是“192.168.1.20”,则在A上运行: ``` ssh-copy-id -i /root/.ssh/id_rsa.pub sweet@192.168.1.20 ``` 在B机器上,你可能需要...

Global site tag (gtag.js) - Google Analytics