linux基础之文件和文件夹的常见操作命令

linux中一句话万物皆文件,既然有这种说法,那就是无法避免对文件的操作。

所以这篇就是简单了解linux如何通过命令对问进行简单的操作。虽然linux有自己的桌面系统,但是用linux的时候你会发现,很多时候如果用桌面系统通过鼠标操作无法完成。

ps:本篇的系统为centos7作为演示。

对文件或文件夹操作的方式有:新建,改名,查看,删除,拷贝,移动这些操作。(本篇不会写对文件内容的操作,因为那个单独介绍linux中神奇的编辑器vim的时候会聊)

而对文件进行操作的行为对应的命令如下:

行为 命令
创建文件 touch 文件夹名字
移动/修改文件或文件夹名字 mv 文件夹或文件 文件夹或文件
查看文件或文件夹信息 ls
查看文件内容 cat
文件或文件夹删除 rm
文件或文件夹复制 cp 文件或文件夹 文件或文件夹
创建文件夹 mkdir
删除空的文件夹 rmdir (如果不为空需要使用rm -r -f)

ls

这个命令,主要是查看文件夹下的目录结构,是Linux用户无法避开的命令。

ls命令下常用的命令

[路径不写默认是pwd 命令得到的路径,也可以自己写路径]

ls -a :显示路径下的所有子目录,包括文件和文件夹
ls -l:  显示详细信息,此命令也可以简写ll。
ls -R: 显示文件,如果遇见文件夹则递归显示其目录下的文件)
ls -m: 目录下的文件以及文件夹通过“,”分割显示
ls –x: 按水平对齐方式列出档案,因为ls 显示的文件名长度而自动       换行显示的不太方便看,可以使用这个命令
ls -t 按照时间排序显示

在查看文件的时候,会发现文件或文件夹的颜色有不同,具体代表什么意思呢?

在这里插入图片描述

linux 文件颜色意义
绿色文件: 可执行文件,可执行的程序 
红色文件:压缩文件或者包文件
蓝色文件:目录
白色文件:一般性文件,如文本文件,配置文件,源码文件等 
浅蓝色文件:链接文件,主要是使用ln命令建立的文件
红色闪烁:表示链接的文件有问题
黄色:表示设备文件
灰色:表示其他文件

而文件前面列表前的字母也有其代表的意义

文件类型
-  普通文件
d 目录
l 链接文件
b 设备文件
c 字符设备
s 套接字文件
p 管道文件

touch

创建文件的命令,当然这个不是唯一的创建文件命令方式,比如vim命令,存在就打开,不存在会创建。

而touch不但可以新建文件,可以修改文件甚至文件的是时间戳。

但是touch中的时间戳有三个,如何查看需要用stat命令进行查看如下:

在这里插入图片描述

创建时间 虽然有这个字段,但是没有显示时间。

看一下英语版

在这里插入图片描述

有时间显示的三个:

​ ** 最近访问时间:**显示的是文件中的数据最后访问的时间。

​ ** 最近更改时间:** 显示文件内容最后修改的时间

最近改动时间: 显示的文件的权限,拥有者,所属的组,链连数,当然如果内容改变时候也会改变

现在看一下常用的touch 参数,以及对应的作用:

参数 作用
-a 只修改 文件的访问时间,当然改动时间也会修改,更新为当前时间
-m 修改文件的修改时间,而会改变access的的时间,当然改动时间也会修改,更新为当前时间
-c 不创建不存在的文件(也就是只会创建已存在的文件,关键如果文件有内容不会改变,只是改了三个时间戳为当前时间)
-d 指定时间 ,可以是非当前时间,会修改访问时间和内容更改时间(时间格式根据stas显示的日期格式即可)
-t 修改会修改访问时间和内容更改时间 格式为MMDDhhmm[[CC]YY][.ss] 从左至右分别是月份,日期,小时,分钟,可选的世纪和 年,以及可选的秒.
-r 将目标文件按照某文件的时间进行更改。 touch -r 参考文件 目标文件 ,如果目标文件不存在会创建。

mv

对文件或文件夹的移动,以及文件或文件夹修改名字。

其实mv本质就是移动文件:将文件移动到某路径下以新名字存储。

但为什么会修改名字呢?简单理解就是移动文件到现在的位置将其命名为新的名字。

格式如下:

mv  old_file   new_file

常用的参数以及作用

参数 作用
-b 移动文件到某个路径下,如果已有此文件名字,就备份原来文件后再移动
-f 移动文件,如果有了这个文件,也不会告诉用户直接覆盖(无参数默认-f)
-i 移动文件,如果目的处已有,则提示是否覆盖
-u 若目标文件已经存在,且 source 比较新,才会更新(update) 必须是文件而非文件夹

rm

将文件或者文件夹删除的命令。

具体参数如下

参数 作用
-i 提示是否删除每个文件,如果回应否定就是跳过
-r 递归递归文件目录中内容
-f 忽略不存在的文件或权限不足,不向用户提示,直接删除

cp

当然linux也支持文件的复制的,那就是cp这个命令。

常用的参数以及作用

参数 作用
-a 完全复制目录结构,一般使用复制目录先当于 -pdr
-d 复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。一般遇见快捷方式会复制过来其快捷方式的数据源,但是-d 参数是只是复制其链接的而非源
-f 目标存在文件则直接覆盖不提示(不写默认)
-i 目标存在文件则提示是否覆盖
-p 复制文件保留其所有这,组许可和时间属性等
-r 复制文件或文件夹 并且是递归复制
-l 不复制文件,只是生成链接文件。(L的小写不是i的大写)

cat ,head,tail

cat

这个是查看文件内容的一个命令,这个命令无论是什么格式的文件都可以查看,当然你非要打开一个.exe文件,那显示的是乱码。

具体看其常用参数以及作用

参数 作用
-n 给输出的行前面带编号(–number 的简写)
-b 和-n类似 但是遇见空白行不编号(–number-nonblank的简写)
-s 将连续多行空白变成一行空白(–squeeze-blank的简写)
-E 每行的结束添加一个$(–show-ends 的简写)
-T 将 TAB 字符显示为 ^I。(–show-tabs的简写)
-v 除了 LFD 和 TAB 之外所有控制符用 ^ 和 M- 记方式显示。(–show-nonprinting的简写)
-A 等价与 -vET (–show-all的简写)
-e 等价与-vE
-t 等价与-vT

除了cat还有head 和tail 两个查看文件的命令。

head

为什么会有head呢,看起名知其意思,就是从文件的前面开始看,方便我们看用户看想看的地方

head 如果不添加参数的话默认是打印前10行的内容。

下面看一下常用参数的作用

参数 作用
-c 从开始打印多少个字节 具体写法 head - c {字节数字 这个是必写} 文件
-n 打印前面多少行的内容 写法有两种 head -n {行数字 这个是必写} 文件 或者写 head -{行数字 这个是必写} 文件
-v 打印内容前显示文件的名字
-q 打印内容前不显示文件的名字(不写默认)

tail

自然有头部,开始自然也会有从尾部开始。

tail 不写参数默认是后10行。

现在看一下常用参数以及作用

参数 作用
-f 当文件增长时,输出后续添加的数据;
-n 打印后数多少行的内容 head -n {字节数字 这个是必写} 文件
-c 从后面打印多少个字节 具体写法 head - c {字节数字 这个是必写} 文件

mkdir

前面创建文件,自然也会有创建文件夹

mkdir 文件夹 如果不加参数 只能创建拥有父目录下的文件。

看一下其常用的参数

参数 作用
-p 创建文件夹,如果父目录没有也会创建父目录
-v 创建一个目录会打印出来

rmdir

删除目录,这个命令无论加不加参数,都只能删除空的文件夹,如果文件夹下面带有文件则无法删除,需要使用rm -rf 命令进行删除

rmdir 如果不带参数,那么只能删除没有子文件夹的空文件夹。

常用的参数

参数 作用
-p 递归删除没有文件的子文件夹,以及本身文件夹。例如:命令’rmdir -p a/b/c’按 照’rmdir /a/b/c’; ‘rmdir a/b’; 'rmdir a’的顺序删除目录。

Guess you like

Origin blog.csdn.net/u011863822/article/details/119935116