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 . –i为提示确认。)
cp file1 dir1                 将文档 file1 复制到目录 dir1 下,文件名仍为 file1.
cp /tmp/file1 .              将目录 /tmp 下的文档 file1复制到现行目录下,档名仍为 file1.
cp /tmp/file1 file2         将目录 /tmp 下的文档 file1现行目录下,档名为file2
cp -r dir1 dir2               (recursive copy) 复制整个目录.若目录 dir2 不存在,则将目录dir1,及其所有文档和子目录,复制到目录 dir2 下,新目录名称为dir1.若目录dir2不存在,则将dir1,及其所有文档和子目录,复制为目录 dir2.



mkdir命令



mkdir [选项] 目录名

-m数字:设置新建目录的权限,权限用数字表示。
-p:如果目录名的路径中包含着不存在的子目录,那么就逐一地建立,直到最后的子目录为止。

      创建目录时,如果目录名前没有指定目录的路径,那么就表示在当前目录下创建;如果有路径名,则在指定的路径下建立。新建的子目录必须不与已经存在的文件名或目录名重名。例如:

    # pwd                               //在当前目录下创建子目录zhang 
    /home/teacher1 
    # ls 
    # mkdir zhang 
    # ls 
    zhang 
    # mkdir  /home/teacher1/yang    //使用绝对路径创建子目录yang 
    # ls 
    yang  zhang 
    # mkdir zhang                   //不能重名创建 
    mkdir: 无法创建目录 "zhang": 文件已存在

      在创建子目录的时候,如果子目录的父目录不存在,则无法创建。使用选项"-p",则可以逐级创建目录。例如在当前目录下创建li/document目录:

    # pwd             
    /home/teacher1 
    #mkdir  li/document             //由于不存在li子目
    录,li/document子目录无法创建 
    mkdir: 无法创建目录 "li/document": 没有那个文件或目录 
    # mkdir  -p  li/document        //参数"-p"允许逐级创建目录 
    # ls 
    li  yang  zhang 
    # cd li 
    # ls 
    document

    再如创建新目录/usr/Bob/example,且指定权限为700,命令行为:

    $ mkdir  -m  700  /usr/Bob/example