Linux(CentOS)文件操作命令
touch命令
— 功能说明:生成新的空文件或更改现有文件的时间戳。
— 命令格式:touch [参数] <文件> …
— 常用参数:
-a : 只更改访问时间。
-m : 只更改修改时间。
-t <STAMP> : 使用[[CC]YY]MMDDhhmm[.ss]格式的时间而非当前时间。
-r <参考文件或目录> : 使用指定文件的时间属性而非当前时间。
— 使用示例:
touch newfile
touch file
touch -a file
touch -m file
touch -t 200701311200 file
— GNU/Linux的文件有3种类型的时间戳:
mtime: 最后修改时间(ls –lt)
ctime: 状态改变时间(ls –lc)
atime: 最后访问时间(ls –lu)
注意:
1.ctime并非文件创建时间。
2.覆盖一个文件会改变所有三类时间:mtime、ctime和atime。
3.改变文件的访问权限或拥有者会改变文件的ctime和atime。
4.读文件会改变文件的atime。
cp命令
— 功能说明:复制文件或目录。
— 命令格式:cp [参数] <源> <目标>
— 常用参数:
-a : 等价于 –dpR。
-d : 当复制符号链接的源文件时,目标文件也将创建符号链接且指向源文件所链接的原始文件。
-f : 强制复制,不管目标是否存在。
-i : 交互式复制,覆盖文件前需要确认。
-p : 在复制文件过程中保留文件属性,包括属主、组、权限与时间戳。
-R,-r : 递归地复制目录及目录内的所有项目。
-l : 对源文件创建硬链接,而非复制文件,也可以使用ln命令进行。
-s : 对源文件创建符号链接,而非复制文件,也可以使用ln -s命令进行。
-u : 只有当源文件的修改时间(ctime)比目标文件更新时或目标尚不存在时才进行复制。
— 使用示例:
cp file1 file2
cp some/dir/file1 someother/dir/
cp some/dir/file1 someother/dir/file2
cp some/dir/file .
cp some/dir/files someother/dir/
cp some/dir/file1 some/dir/file2 some/dir/file3 someother/dir/
cp -r some/dir/ someother/dir/
cp -au some/dir/ someother/dir/
mv命令
— 功能说明:移动文件或目录、文件或目录改名。
— 命令格式:mv [参数] <源> <目标>
— 常用参数:
-f : 强制移动,不管目标是否存在。
-i : 交互式移动,覆盖文件前需要确认。
-u : 只有当源文件的修改时间(ctime)比目标文件更新时或目标尚不存在时才进行移动。
— 使用示例:
mv /some/dir/file1 /someother/dir/
mv /some/dir/file1 /someother/dir/file2
mv /some/dir/files /someother/dir/
mv file newname_file
mv dir newname_dir
rm命令
— 功能说明:删除文件或目录。
— 命令格式:rm [参数] <文件> …
— 常用参数:
-f : 略过不存在的文件,不显示任何信息。
-i : 进行任何删除操作前必须先确认。
-r,-R : 递归删除该目录下的所有目录层。
— 使用示例:
rm /some/dir/file1
rm -i /some/dir/file1
rm -f /some/dir/file1
rm -rf /some/dir/
注意
1.默认时,rm不会删除目录。使用-recursive(-r或–R)选项可删除每个给定的目录,以及其下所有的内容。
2.要删除第一个字符为“-”的文件(例如“-foo”),请使用以下其中一种方法:
rm — -foo
rm ./-f
ln命令
— 功能说明:创建链接文件。
— 命令格式:ln [参数] <被链接的文件> <链接文件名>
— 常用参数:
-s : 创建符号链接,而非硬链接。
-f : 强行创建链接,不论其是否存在。
-i : 覆盖原有文件之前先询问用户。
— 使用示例:
ln somefile hardlinkfile
ln -s somefile softlinkfile
ln -s somedir softlinkfile
symlinks命令
— 功能说明:检查目录中的符号链接,并显示符号链接类型。
— 命令格式:symlinks [参数] <目录> [<目录>…]
— 链接类型:
absolute : 使用绝对路径的符号链接。
dangling : 原始文件已经不存在的符号链接。
lengthy : 符号链接的路径中包含了多余的“../”。
messy : 符号链接的路径中包含了多余的“/”。
other_fs : 原始文件位于其他文件系统中。
relative : 使用相对路径的符号链接。
— 常用参数:
-c : 将 absolute/messy类型的符号链接转换为relative类型。
-d : 删除dangling类型的符号链接。
-r : 检查目录下所有子目录中的符号链接。
-s : 缩短lengthy类型的符号链接。
-v : 显示所有类型的符号链接。
— 使用示例:
symlinks -v -r .
symlinks -v /usr/bin
symlinks -c somedir
symlinks -s -d somedir