cp -r source destination
:
-r 复制文件及目录
-u, --update 仅复制比目标文件新的,或不存在的
-n 不覆盖已有文件
-i 覆盖前提示
-
mkdir -p dir1/dir2
创建目录;-p
自动创建不存在的父目录 -
mv source destination
重命名/移动 -
rm -rf
删除文件;-r
删除目录。-f
强制删除,不提示删除信息 -
ln -sf item link
创建软链接;-f
删除已存在的链接
链接文件
# 创建硬链接
ln item link
# 创建软链接
ln -s item link
硬链接的缺点
- 不能跨物理硬盘保存
- 不能创建关于目录的硬链接
软链接和硬链接的区别
其实,每次创建一个新文件,都会创建一个硬链接,即一个文件名指向硬盘中的数据;当所有的硬链接被删除时,硬盘中的数据被删除
软链接(更现代化,类似 Windows 中的快捷方式),克服了硬链接的缺点,软链接文件保存了指向文件的信息:
- 当写入数据到软链接时,数据写入到源文件;
- 当源文件删除时,其软链接为损坏状态
如何判两个文件是不是同一文件的硬链接
其实,一个文件可分为两部分:
- 文件名:用硬链接表示,指向硬盘中的数据
- 文件数据:会占用硬盘中的一系列
块(block)
,系统用一个inode
表示这些块
创建软链接时的陷阱
使用相对路径创建软链接时,一定要注意以下错误:
链接文件的一种使用场景
假设一个文件会有多个更替版本:file_verison_1
, file_version_2
而有许多其他程序需用到该文件,如果每个更新文件,都要修改其他程序,则非常麻烦
这时,可以创建一个链接文件 file_soft_link
,当文件更新时,同时更新链接文件,而其他程序只要指向该链接文件即可
[admin@localhost ~]$ echo 'version 1' > file_version_1
[admin@localhost ~]$ ln -s file_version_1 file_soft_link
[admin@localhost ~]$ cat file_soft_link
version 1
# 更新版本
[admin@localhost ~]$ echo 'version 2' > file_version_2
[admin@localhost ~]$ ln -sf file_version_2 file_soft_link
[admin@localhost ~]$ cat file_soft_link
version 2
通配符
# 列出以数字结尾的文件,[:digit:] 表示 0-9 , 外面的 [] 表示 [0-9],即 0-9 任意一个
ls *[[:digit:]]
一条命名创建100个文件
创建100 个文件

创建2个文件

网友评论