UNIX基本文件操作之文件复制、移动和删除
一、文件复制、移动和删除
1、复制文件
•复制file1,新文件为file2;如果file2为目录,则将file1复制为该目录下的同名文件
•-i 如果目标已经存在,提示是否覆盖
•-p 复制时保留原文件的权限设置和修改时间
•-r/R 复制file1本身及其下的所有子目录及文件
•cp -p a.log a.log.bak
•cp –r dir./
2、移动文件
•将文件从一个位置移动到另一个位置
•mv [options] file1 file2
•将file1移动到file2; 实际类似于改名
•mv [options] file-listdirectory
•将file-list中指定的所有文件移动到目录directory下面
•-f 强行移动
•-i 如果目标已经存在,则提示是否覆盖
3、删除文件
•rm [options] file-list
•将file-list中指定的文件删除
•-f 强制删除
•-i 删除之前提示用户确认
•-r 如果指定目录,则删除该目录及其所有子文件、子目录
•rmdir dir-list
•要求目录必须为空;否则,无法删除
二、文件内容操作
1、统计文件信息
•wc [options] file-list
•-c 统计字符数
•-l 统计文件中行数
2、添加内容
•cat file1 >> file2
•将文件file1的内容添加到file2后面
•cat file1 > file2
•将file1的内容覆盖file2的内容,会覆盖file2原内容
•cat file1 file2 file3 … >file
•将file1、file2、file3的文件内容合并到file中
3、比较文件内容
•diff [options] [file1][file2]
•逐行比较两个文件内容,并输出比较结果
•-b 获取文件末尾的空行(包含空格、tab键)
•-h 快速比较
4、删除文件中重复的行
•uniq [options] [input-file][output-file]
•将输入文件input-file中重复的行删除后,将结果输出到输出文件。如果没有指定输出文件,则输出到标准输出;原文件内容不变
•-c 在结果中显示每一行的重复数
•-d 显示重复的行
•-u 显示不重复的行
•例如 uniq -d tt ttt