在目录a,b和c中有一些文件,tree命令的输出将能更好的说明: 文件布局 1. 使用cp命令创建合并: 现在我们将这两个目录合并成一个名为merged新的目录中.完成上述操作最简单的方式就是递归复制目录,如下图所示: 递归复制完成新的合并 1.1 cp命令和替换带来的问题: 这种方式所带来的问题是该合并目录中所创建的文件为原文件的副本,并非原文件本身.别急, (你可能正在问自己) 如果不是原文件又有什么问题 要回答你的问题,考虑下你有很多大文件的情况.那种情形下,复制所有的文件可能花费数小时。 现在让我们回到刚那问题上,且尝试使用mv命令而不是cp命令。 企图使用mv命令进行合并操作 这些目录不能被合并.因此我们不能像这样使用mv命令去合并目录.
Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同。 cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 关于cp的具体用法: 命令基本格式: cp [OPTIONS] SOURCE DEST --- 从源路径copy文件到目的路径 cp [OPTIONS] SOURCE... DIRECTORY --- 将多个源文件copy到指定的目录(多个源文件用空格分隔) OPTIONS: -a same as -dpR 尽可能将源文件状态、权限等资料都照原装予以复制,并且是递归copy; -r 表示递归copy,若source中含有目录名,则将目录下之档案亦皆依序拷贝至目的地; -f 表示force,若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制; 范例: 1. 将档案 aaa 复制(已存在),并命名为 bbb: cp aaa bbb 2. 将所有的C语言程式拷贝至 Finished 子目录中: cp *.c Finished/
cp命令 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,同MSDOS下的copy命令一样,功能十分强大。 语法: cp [选项] 源文件或目录 目标文件或目录 说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。该命令的各选项含义如下:- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。- d 拷贝时保留链接。- f 删除已经存在的目标文件而不提示。- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。 - p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。 - r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。- l 不作拷贝,只是链接文件。 需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名已存在,用cp命令拷贝文件后,这个文件就会被新源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。例子:Cp -i file1 file2 (将文档 file1 复制成 file2 .