Linux系统中对文件和目录的各种操作

简介: Linux系统中对文件和目录的各种操作

一、Linux目录的结构


1.1它的树形目录

在Linux世界里,一切皆文件Linux目录中有且只有一个根目录 /

(1)根目录


所有目录都是由根目录衍生出来的,所有分区、目录、文件等的位置起点;

根目录与系统的开机、修复、还原密切相关;

整个树形目录结构中,使用独立的一个“/”表示;

(2)常见的子目录

/root /bin /boot /dev /etc

/home /var /usr /sbin

22.1.png

1.2常见的子目录作用


/root:root 的主目录。普通用户主目录在 /home/ 下,root 主目录直接在“/”下(系统管理员root的宿主目录)


/home:在创建用户时,每个用户要有一个默认登录和保存自己数据的位置,就是用户的主目录,所有普通用户的主目录是在 /home/ 下建立一个和用户名相同的目录。如用户 liming 的主目录就是 /home/song(普通用户的宿主目录也称为家目录)


/boot:系统启动目录,保存与系统启动相关的文件,如内核文件和启动引导程序(grub)文件等(系统内核、启动文件)


/dev: 包含连接到系统的任何设备,例如设备文件,终端文件,USB 等(设备文件)


/etc:配置文件保存位置。系统内所有采用默认安装方式(rpm 安装)的服务配置文件全部保存在此目录中,如用户信息、服务的启动脚本、常用服务的配置文件等(配置文件)


/bin:它是重要的二进制应用程序,包含二进制文件,系统的所有用户使用的命令都在这里(所有用户可执行的命令)


/sbin:保存与系统环境设置相关的命令,只有 root 可以使用这些命令进行系统环境设置,但也有些命令可以允许普通用户查看(管理员可执行的管理命令)


/usr: 包含绝大多数用户都能访问的应用程序和文件(应用程序)


/var:经常变化的文件,诸如日志文件或数据库等(日志文件等)


/tmp:临时目录。系统存放临时文件的目录,在该目录下,所有用户都可以访问和写入。建议此目录中不能保存重要数据,最好每次开机都把该目录清空(临时文件)


/lib:动态库文件,类似与Windows的dll文件(系统调用的函数库保存位置)


/mnt: 挂载文件系统**(默认挂载点**)


/opt :第三方安装的软件保存位置。这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中。不过笔者还是习惯把软件放到 /usr/local/ 目录中,也就是说,/usr/local/ 目录也可以用来安装软件(第三方应用程序安装所在目录)


/proc:虚拟文件系统。该目录中的数据并不保存在硬盘上,而是保存到内存中。主要保存系统的内核、进程、外部设备状态和网络状态等。如 /proc/cpuinfo 是保存 CPU 信息的,/proc/devices 是保存设备驱动的列表的,/proc/filesystems 是保存文件系统列表的,/proc/net 是保存网络协议信息的…(存放映射系统文件)


/media :挂载目录。系统建议用来挂载媒体设备,如软盘和光盘(可移动设备)


二、查看及检索文件


2.1查看及检索文件–cat


cat:显示并连接文件内容

基本格式:cat [选项] 文件名...

常用选项:


-n: 对所有输出的行数编号

-b: 对于空白行不编号

-s: 将所有的连续的多个空行替换为一个空行

image.png

查看系统版本:cat /etc/centos-release

image.png


2.2分页查看文件内容——more命令


作用:全屏方式显示分页内容

基本格式:more [选项] 文件名...

缺点:下翻到最后一页后会自动退出

交互操作方法


按Enter键向下逐行滚动

按空格键向下翻一屏

按b键向上翻一屏

按q键退出

结合管道符(管道符:上一条命令的结果传给下一个命令)例如:Is -R /etc| more无法向上翻页,也不会出现进度条

举例:more /var/log/message


2.3分页查看文件内容——less命令


作用:与more命令相同,但拓展功能更多

格式:less [选项] 文件名 …

特点:下翻到最后一页后不会自动退出

交互操作方法


Page Up 向上翻页,Page Down向下翻页

按”/“键查找内容,”n"下一个内容,“N”上一个内容

其他功能与more命令基本类似

结合管道操作使用时可以向上翻页(管道符:上一条命令的结果传给下一个命令)

举例:less /var/log/message


2.4查看开头部分内容——head命令


作用:查看文件开头一部分内容,默认10行

格式:head [-n] 文件名 #n为行数


2.5查看结尾部分内容——tail命令


作用:查看文件结尾一部分内容,默认10行

格式:tail -n 文件名

格式: tail -f 文件名 #实时查看,监控


2.6统计文件内容——wc命令


作用:统计文件中的单词数量(Word Count)等信息

格式:wc [选项]… 目标文件…

常用选项:


-l:统计行数

-w:统计单词个数

-c:统计字节数

image.png

2.7检索和过滤文件内容——grep命令


grep——文本三剑客,主要处理文本中的字符

作用:在文件中查找并显示包含指定字符串的行

grep就是过滤出想要的内容

格式:grep [选项]… 查找条件 目标文件


常用选项:


-i:查找时忽略大小写

-v:反转查找,输出与查找条件不相符的行

-n: 显示匹配行及行号

-e 实现可多个查找条件的匹配,逻辑or(或)关系

查找条件:


要查找的字符串以双引号括起来

"^…"表示以…开头,

“…$"表示以…结尾

"^$"表示空行

三、备份与恢复文档


3.1压缩解压缩命令——gzip、bzip2


作用:制作压缩文件和解压缩文件

格式:gzip [-9] 文件名 #制作压缩文件

格式: bzip2 [-9] 文件名 #制作压缩文件

格式: gzip -d #解.gz压缩文件

格式: bzip2 -d #解.bz2压缩文件

特点:

当使用gzip压缩一个纯文本文件时,效果是非常明显的,大约可以减少70%以上的文件大小。

gzip制作的压缩文件默认的扩展名为".gz" 原始文件不再保留

bzip2制作的压缩文件默认的扩展名为“.bz2”,原始文件不再保留


常用命令选项


-9 :提高压缩率(-9是等级,分1-9级别,1压缩比例最小,速度最慢;9压缩比例最大,速度快,一般默认是6)

-d:解压

3.2制作归档文件命令 —— tar


作用:制作和释放归档文档

基本格式:

-c:创建(Create).tar格式的包文件

-C:解压时指定释放的目标文件夹

-f:表示使用归档文件

-j:调用bzip2程序进行压缩或解压

-p:打包时保留文件及目录的权限

-P:打包时保留文件及目录的绝对路径

-t:列表查看包内的文件

-v:输出详细信息(Verbone)

-x:解开.tar格式的包文件

-z:调用gzip程序进行压缩或解压

组合选项:


tar [jcvf]… 归档文件名 源文件或目录(创建用bzip2进行压缩)

tar [jxvf]… 归档文件名 [-C 指定目标目录](bzip2进行解压)

tar [zcvf]… 归档文件名 源文件或目录创建用(gzip的压缩)

tar [zxvf]… 归档文件名 [-C 目标目录](用gzip进行解压)


(其中v表示输出详细信息,不写v适合于不输出大的信息)


相关文章
|
5月前
|
存储 Linux
Linux 目录名称
Linux系统目录结构简介:根目录(/)下包含各类功能目录,如/bin存放用户命令,/etc存储配置文件,/home为用户主目录,/var记录日志等可变数据,/usr存放用户工具,/tmp用于临时文件。各目录分工明确,保障系统有序运行。(238字)
303 5
|
6月前
|
Ubuntu Linux Anolis
Linux系统禁用swap
本文介绍了在新版本Linux系统(如Ubuntu 20.04+、CentOS Stream、openEuler等)中禁用swap的两种方法。传统通过注释/etc/fstab中swap行的方式已失效,现需使用systemd管理swap.target服务或在/etc/fstab中添加noauto参数实现禁用。方法1通过屏蔽swap.target适用于新版系统,方法2通过修改fstab挂载选项更通用,兼容所有系统。
563 3
Linux系统禁用swap
|
6月前
|
Linux
Linux系统修改网卡名为eth0、eth1
在Linux系统中,可通过修改GRUB配置和创建Udev规则或使用systemd链接文件,将网卡名改为`eth0`、`eth1`等传统命名方式,适用于多种发行版并支持多网卡配置。
1072 3
|
7月前
|
Ubuntu Linux
计算机基础知识:linux系统怎么安装?
在虚拟机软件中创建一个新的虚拟机,并选择相应操作系统类型和硬盘空间大小等参数。将下载的 ISO 镜像文件加载到虚拟机中。启动虚拟机,进入安装界面,并按照步骤进行安装。安装完成后,可以在虚拟机中使用 Linux 系统。
|
7月前
|
存储 Ubuntu Linux
「正点原子Linux连载」第二章Ubuntu系统入门
在图2.8.2.4中,我们使用命令umount卸载了U盘,卸载以后当我们再去访问文件夹/mnt/tmp的时候发现里面没有任何文件了,说明我们卸载成功了。
|
Ubuntu Linux 网络安全
Linux系统初始化脚本
一款支持Rocky、CentOS、Ubuntu、Debian、openEuler等主流Linux发行版的系统初始化Shell脚本,涵盖网络配置、主机名设置、镜像源更换、安全加固等多项功能,适配单/双网卡环境,支持UEFI引导,提供多版本下载与持续更新。
663 3
Linux系统初始化脚本
|
7月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
481 18
|
6月前
|
安全 Linux Shell
Linux系统提权方式全面总结:从基础到高级攻防技术
本文全面总结Linux系统提权技术,涵盖权限体系、配置错误、漏洞利用、密码攻击等方法,帮助安全研究人员掌握攻防技术,提升系统防护能力。
721 1
|
6月前
|
监控 安全 Linux
Linux系统提权之计划任务(Cron Jobs)提权
在Linux系统中,计划任务(Cron Jobs)常用于定时执行脚本或命令。若配置不当,攻击者可利用其提权至root权限。常见漏洞包括可写的Cron脚本、目录、通配符注入及PATH变量劫持。攻击者通过修改脚本、创建恶意任务或注入命令实现提权。系统管理员应遵循最小权限原则、使用绝对路径、避免通配符、设置安全PATH并定期审计,以防范此类攻击。
1209 1
|
7月前
|
缓存 监控 Linux
Linux系统清理缓存(buff/cache)的有效方法。
总结而言,在大多数情形下你不必担心Linux中buffer与cache占用过多内存在影响到其他程序运行;因为当程序请求更多内存在没有足够可用资源时,Linux会自行调整其占有量。只有当你明确知道当前环境与需求并希望立即回收这部分资源给即将运行重负载任务之前才考虑上述方法去主动干预。
2045 10