linux学习(四)复制(cp)移动(mv)删除(rm)查找(find)文件、文件夹操作、软硬链接的区别
@
复制文件
cp命令用于复制文件到制定的目录
语法格式为:
cp [选项] 源文件或目录 目标文件或目录
| 命令选项 | 含义 |
|---|---|
| cp -d | 当复制符号链接时,把目标文件或目录页建立为符号链接,并指向与源文件或目录连接的原视文件或者目录 |
| cp -f | 强行复制文件或者目录 |
| cp -l | 建立硬链接,而非复制文件 |
| cp -i | 覆盖文件之前先询问用户 |
| cp -s | 对源文件建立符号连接(软链接),而非复制文件 |
| cp -R | 递归处理,将制定目录下的所有文件与子目录一并处理 |
| cp -rf | 复制一个目录,该目录下的所有文件和子目录 |
1.硬链接
硬链接说白了是一个指针,指向文件索引节点,系统并不为它重新分配inode。可以用:ln命令来建立硬链接。
2.软链接(符号链接)
软链接克服了硬链接的不足,没有任何文件系统的限制,任何用户可以创建指向目录的符号链接。因而现在更为广泛使用,它具有更大的灵活性,甚至可以跨越不同机器、不同网络对文件进行链接。
软链接相当于快捷方式
linux 软连接和硬链接的区别:
4点不同 :
(1)软连接可以 跨文件系统 ,硬连接不可以 。
实践的方法就是用共享文件把windows下的 aa.txt文本文档连接到linux下/root目录 下 bb,cc . ln -s aa.txt
/root/bb 连接成功 。ln aa.txt /root/bb 失败 。
(2)关于 I节点的问题 。硬连接不管有多少个,都指向的是同一个I节点,会把 结点连接数增加 ,只要结点的连接数不是 0,文件就一直存在 ,不管你删除的是
源文件还是 连接的文件 。只要有一个存在 ,文件就 存在 (其实也不分什么 源文件连接文件的 ,因为他们指向都是同一个 I节点)。 当你修改源文件或者连接文件
任何一个的时候 ,其他的 文件都会做同步的修改 。软链接不直接使用i节点号作为文件指针,而是使用文件路径名作为指针。所以 删除连接文件 对源文件无影响,但
是 删除 源文件,连接文件就会找不到要指向的文件 。软链接有自己的inode,并在磁盘上有一小片空间存放路径名.相当于复制一份
(3)软连接可以对一个不存在的文件名进行连接 。
(4)软连接可以对目录进行连接。
备注:I节点 :它是UNIX内部用于描述文件特性的数据结构.我们通常称I节点为文件索引结点(信息结点).i节点 含有关于文件的大部分的重要信 息,包括文件数据块在
磁盘上的地址.每一个I节点有它自己的标志号,我们称为文件顺序号.I节点包含的信息 1.文件类型 2.文件属主关系 3.文件的访问权限 4.文件的时间截.
mv命令
mv命令用来将文件从一个目录移动到另一个目录,或者对目录重新命名
mv [选项] 源文件或目录 目录和目标文件
| 命令选项 | 含义 |
|---|---|
| mv -b | 当目标文件存在的时候,覆盖前,为其创建一个备份 |
| mv -f | 如果目标文件或目录重复,则直接覆盖现有文件和目录 |
| mv -i | 交互式操作,如果重复时就先询问再覆盖 |
移动文件并且改名

rm命令
rm命令可以删除一个目录中的一个或者多个文件或者目录,如果删除的是链接文件则源文件不变
rm [选项] 文件或目录列表
| 命令选项 | 含义 |
|---|---|
| rm -f | 强制删除文件或者目录 |
| rm -i | 交互式操作,删除前先询问用户是否确定删除 |
| rm -r | 递归删除目录,将指定目录下所有文件与子目录一并处理 |
touch 命令
创建新的空文件或者改变已有文件的时间标签
touch [选项] 文件名
若文件不存在,就创建一个新的文件,如果文件存在就直接改变文件的时间。
file命令
file命令用来识别文件类型,也可以用来辨别一些文件的编码格式
file 文件名称
find命令
find命令用来查找文件
find [目录文件] [文件的匹配标准]
| 命令选项 | 含义 |
|---|---|
| -name | 指定文件名字符串作为寻找文件的匹配标准, |
| - type | 查找符合指定的文件类型,如 f(普通文件)、d(目录)、I(符号链接)、c(字符特殊) |
| - perm | 查找符合指定的权限数值的文件或目录 |
| - links | 查找符合指定硬链接数目的文件或者目录 |
| - size | 查找符合指定文件大小的文件 |
| - atime | 查找在指定时间被获取过的文件或目录 |
| - mtime | 查找在指定时间被更改过的文件或目录 |
| - user | 查找符合指定的拥有者名称或者文件 |
| - group | 查找符合指定的群组名称或者文件 |
例如:

grep命令
再指定文件中检索匹配关键字信息,并把匹配的行打印出来
| 命令选项 | 含义 |
|---|---|
| - i | 忽略字符大小 |
| - n | 在输出匹配之前,标出该行的行号 |
| - v | 反转查找,即查找不包含所查字符串的行 |

mkdir命令
mkdir命令为创建目录,其语法格式为:
mkdir [选项] 目录列表
| 命令选项 | 含义 |
|---|---|
| - m | 建立目录同时设置目录的权限 |
| - p | 若所要建立目录的上层目录尚未建立,则会一并建立上次目录 |
rmdir命令
| 命令选项 | 含义 |
|---|---|
| - r | 强制删除目录以及目录中的文件和子目录 |
| - p | 删除指定目录的上层目录已经变成空目录,则会一并删除上次目录 |
linux学习(四)复制(cp)移动(mv)删除(rm)查找(find)文件、文件夹操作、软硬链接的区别的更多相关文章
- Linux常用命令之cp、mv、rm、cat、more、head、tail、ln命令讲解
上一章节中,我们了解到了Linux系统的最基础的几个文件处理命令,核心的是ls命令,在今天这章中,我们来继续学习Linux对于文件操作相关的一些命令,比如复制.移动.删除.查看等命令. 1.cp 命令 ...
- linux下文件的复制、移动与删除命令为:cp,mv,rm
一.文件复制命令cp 命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destination) cp [option] source1 source2 sour ...
- Linux学习笔记:常用命令grep、iconv、cp、mv、rm
本篇记录一些近期常用的命令. 一.grep过滤 grep过滤 不包含某些字符串 cat test.txt | grep -v '.jpg' 过滤jpg结尾的图片 cat test.txt | grep ...
- linux-14基础命令之-复制(cp)移动(mv),删除(rm),拷贝文件(dd)
1.cp 命令用于复制文件或者目录 格式为:cp[选项]源文件 目标文件 复制名录有三种情况: @1.目标文件是一个目录,将源复制到该目录下: @2.目标文件是一个文件,将源文件覆盖该文件: @3 ...
- 【Linux命令】文件目录管理命令7个(touch、mkdir、cp、mv、rm、dd、file)
目录 touch创建空白文档或设置文件时间 mkdir创建空白目录 cp复制文件或目录 mv剪切文件或重命名文件 rm删除文件或目录 dd按照指定大小和个数的数据库来复制文件或转换文件 file查看文 ...
- Linux学习(四)-Linux常用命令
1.运行级别类 1.1运行级别说明: 0:关机 1:单用户[可用于找回丢失密码] 2:多用户状态没有网络服务 3:多用户状态有网络服务 4:系统未使用保留给用户 5:图形界面 6:系统重启 常用运行级 ...
- linux学习(四)-----linux常用指令
touch 指令 touch 指令创建空文件 基本语法 touch 文件名称 应用实例 案例 1: 创建一个空文件 hello.txt cp 指令 cp 指令拷贝文件到指定目录 基本语法 cp [选项 ...
- Linux常用命令详解(第一章)(ls、man、pwd、cd、mkdir、echo、touch、cp、mv、rm、rmdir、)
本章命令(共11个): 1 2 3 4 5 6 ls man pwd cd mkdir echo touch cp mv rm rmdir 1. " ls " 作用:列出指定目录下 ...
- 3、Linux基础--cp、mv、rm、alias、vi/vim命令
笔记 1.考试 1.判断网络是否通畅的命令 ping 2.定义系统提示组成的变量 PS1 3.Linux中目录从什么开始 根(/) 4.系统中目录路径类型有哪些,解释一下 绝对路径:以根目录作为参照物 ...
随机推荐
- python集合和eval的使用
python集合和eval的使用 创建集合 使用工厂方法 set()和 frozenset(): >>> s = set('cheeseshop') >>> s s ...
- 精通awk系列(9):修改字段或NF引起的$0重新计算
回到: Linux系列文章 Shell系列文章 Awk系列文章 修改字段或NF值的联动效应 注意下面的分割和计算两词:分割表示使用FS(field Separator),计算表示使用预定义变量OFS( ...
- [转]UiPath Build Data Table
本文转自:https://docs.uipath.com/activities/docs/build-data-table UiPath.Core.Activities.BuildDataTable ...
- 发送RCS 消息摘录相关成功log
//11-25 16:48:09.612102 2175 2726 I BugleDataModel: PendingMessagesProcessor: process from InsertN ...
- python中使用adb命令的方法
在python中使用adb命令,可以导入os模块. 1 简单的adb命令. 如:os.system('adb version') 2 稍微复杂的adb命令. 如:os.system('adb shel ...
- tensorflow基本用法个人笔记
综述 TensorFlow程序分为构建阶段和执行阶段.通过构建一个图.执行这个图来得到结果. 构建图 创建源op,源op不需要任何输入,例如常量constant,源op的输出被传递给其他op做 ...
- 如何下载Twitter视频?最简单的保存推特视频的方法
Twitter上面的短视频越来越流行了,但是推特官方并没有提供下载通道.如果你想下载这些小视频到电脑或者手机(安卓/iPhone),该如何操作呢?下面介绍一种最简单的方法. 下载Twitter视频我们 ...
- java对 zip文件的压缩和解压(ant解决中文乱码)
说明: 1.对于压缩的文件,当文件名称是中文时,若使用JDK API中自带的类(java.util.zip.ZipEntry; java.util.zip.ZipOutputStream;)进行压缩, ...
- 反转字符串中的单词 III
给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序. 示例 1: 输入: "Let's take LeetCode contest"输出: &qu ...
- jvaa之初始化块
1.初始化块的作用:对java对象进行初始化: 2.程序的执行顺序:声明成员变量的默认值-->显示初始化,多个初始化块依次被执行(同级别下按先后顺序执行)-->构造器在对成员进行赋值操作. ...