Linux文件复制、移动和重命名

Linux 支持对文件进行复制、移动和重命名操作;另外,Linux 还允许用户统计文件内容。

复制文件命令(cp)

Linux 下的 cp 命令用于复制文件或目录,该命令的使用方式如下:

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

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

cp 命令选项说明如表 8 所示。
表 8:cp 命令选项说明
选项 说明
-a 该选项通常在复制目录时使用。它保留链接、文件属性,并递归地复制目录,其作用等于 dpR 选项的组合。
-d 复制时保留链接
-f 删除已经存在的目标文件而不提示
-i 和 f 选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答 y 时目标文件将被覆盖,是交互式复制。
-p 此时 cp 除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
-r 若给出的源文件是一目录文件,此时 cp 将递归复制该目录下的所有的子目录和文件。此时目标文件必须为一个目录名。
-l 不作复制,只是链接文件。

注意:为防止用户在不经意的情况下用 cp 命令破坏另一个文件,如果指定的目标文件名是一个已存在的文件名,用 cp 命令复制文件后,这个文件就会被新复制的源文件覆盖,因此,在使用 cp 命令复制文件时,最好使用 -i 选项。

移动和重命名文件命令(mv)

在 Linux 系统中,移动文件可使用 mv 命令。mv 命令还可为文件改名,即把源文件以一个新文件名移动到另一个新的目录中去。该命令的使用方式如下:

mv [选项] 源文件名 目标文件名
mv [选项] 源目录名 目标目录名2
mv [选项] 文件列表 目录


mv 命令选项说明如表 9 所示。

表 9:mv 命令选项说明
选项 说明
-b 当遇到要覆盖其他文件或目录时,将自动备份,备份文件名为原文件名加上 -S 参数指定的字符串,若未设置则加上“~”。
-i 交互模式,当移动的目录已存在同名的目标文件名时,用覆盖方式写文件,但在写入之前给出提示。
-f 通常情况下,目标文件存在但用户没有写权限时,mv 会给出提示。本选项会使 mv 命令执行移动而不给出提示。
-u 当要覆盖的文件或目录比源文件新时,不覆盖目标文件。
-S<字符串> 指定备份文件名后要加上的字符串

文件内容统计命令(wc)

wc 命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。该命令使用方式如下:

wc [选项] 文件列表


该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc 同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。

wc 命令选项说明如表 10 所示。
表 10:wc 命令选项说明
选 项 说 明
-c 统计字节数        
-l 统计行数
-w 统计字数