【Linux入门】文件管理

Linux文件管理

Linux目录结构

树形目录结构

根目录
所有分区、目录、文件等的位置起点
整个树形目录结构中,使用独立的一个“/”表示

root目录结构主要作用
/root管理员的宿主(家)目录
/home/xxx普通用户的家目录
/bin命令文件目录,存放所有用户可执行的命令
/sbin管理员操作目录,存放只有管理员可执行的管理命令(s-super)
/boot系统内核、启动文件目录
/dev存放设备文件(光驱、硬盘等)
/etc存放系统程序和大部分应用程序(rpm/yum安装)的配置文件(一般以.conf、.ini结尾,根据语言不同会有变化)
/var存放可以变化的文件,包括各种日志文件
/lib存放系统程序的动态连接共享库文件(类似于Windows里的DLL文件)
/usr存放系统用户工具和程序
/media可拆卸的媒介挂载点,例如U盘、光驱等
/proc存放映射系统信息的文件
/mnt用于临时挂载储存设备的目录
/opt第三方应用程序安装所存放的目录
/tmp存放系统的临时文件

查看及检索文件

cat-查看命令

cat选项描述
-n显示行号。
-b显示非空行的行号,即有效行数。
-s压缩连续的空行为一个空行。
-v显示不可见字符,如制表符和换行符。
-e显示不可见字符,包括换行符(与-v类似,但还包括$符号来标记行尾)。
-t与-v类似,但还包括制表符(^I)的显示。
-A等同于-vET,显示不可见字符并标记行尾。

示例:

  1. 查看名为file.txt的文件内容:
cat file.txt
  1. 查看名为file1.txtfile2.txt的文件内容,并将它们连接在一起:
cat file1.txt file2.txt > combined.txt
  1. 查看名为file.txt的文件内容,并显示行号:
cat -n file.txt
  1. 查看名为file.txt的文件内容,压缩连续的空行为一个空行:
cat -s file.txt
  1. 查看名为file.txt的文件内容,显示不可见字符:
cat -A file.txt

more-查看文件内容命令

全屏方式分页显示文件内容

more [选项] 文件名

交互操作方法:
Enter键:向下逐行滚动
空格键:向下翻一屏
b键:向上翻一屏
q键:退出
另:下翻到最后一页后会自动退出
结合管道操作使用时(例如:Is-R/etclmore)无法向上翻页

less-查看文件内容命令

与 more 命令相同,但展功能更多

less [选项] 文件名 

交互操作方法:
Page Up 向上翻页,Page Down 向下翻页
按“/”键查找内容,“n”下一个内容,"N"上一个内容
通过↑和↓方向键可以实现上下逐行滚动
其他功能与 more 命令基本类似
下翻到最后一页后不会自动退出
结合管道操作使用时可以向上翻页

head-查看文件内容命令

head 命令用于显示文件的前几行内容。默认情况下,它会显示文件的前 10 行。可以通过 -n 参数来指定显示的行数。

head [选项] 文件名
常用选项含义示例
-n指定显示的行数。head -n 5 file.txt 会显示文件的前 5 行。
-c指定显示的字节数。head -c 100 file.txt 会显示文件的前 100 个字节。

tail-查看文件内容命令

tail 命令用于显示文件的末尾几行内容。默认情况下,它会显示文件的末 10 行。可以通过 -n 参数来指定显示的行数。

tail [选项] 文件名
常用选项含义示例
-n指定显示的行数。tail -5 file.txt 会显示文件的末 5 行。
-c指定显示的字节数。tail -c 100 file.txt 会显示文件的末 100 个字节。
-f实时显示文件内容的变化。tail -f file.txt 会持续显示文件的新内容。

wc-统计文件内容命令

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

wc[选项].... 目标文件...
常用选项含义
-c统计字符数(字节数)。
-l统计行数。
-w统计单词数。
-m统计字符数(与 -c 类似,但在多字节编码环境中可能有所不同)。
-L显示最长行的长度。
不带任何选项的wc命令,默认同时使用-lwc 三个选项

grep-global regular expression print,全局正则表达式打印

是一个在文本文件中搜索匹配特定模式的命令行工具

常用选项含义
-i忽略大小写。
-v反向选择,即显示不包含指定模式的行。
-n显示匹配行及其行号。
-c显示匹配到的总行数。(不是匹配到的次数)
-e实现可多个查找条件的匹配,逻辑or关系。
-E支持使用扩展正则表达式,相当于使用egrep命令

在这里插入图片描述

压缩及解压缩文件

gzip-用于压缩和解压缩文件的命令行工具

常用选项含义
-c将压缩后的数据输出到标准输出,而不删除原始文件。
-d解压缩文件。如果省略此选项,gzip会尝试压缩文件。
-r递归压缩目录中的文件。
-v显示详细信息。
-9使用最高压缩级别(压缩效果最好,但速度较慢)。

bzip2-用于压缩和解压缩文件的命令行工具

通常能提供比 gzip 更好的压缩比,但解压速度较慢。

常用选项含义
-c将压缩后的数据输出到标准输出,而不删除原始文件。
-d解压缩文件。如果省略此选项,bzip2会尝试压缩文件。
-k保留原始文件。
-z压缩文件。
-v显示详细信息。
-9使用最高压缩级别(压缩效果最好,但速度较慢)。

tar-用于处理归档文件的命令行工具

tar(Tape Archive)是一个在 Linux 和 Unix 系统中用于处理归档文件的命令行工具。它可以创建、解压缩和管理包含多个文件和/或目录的归档文件。归档文件通常具有 .tar 扩展名,但也可以通过其他扩展名(如 .tar.gz、.tgz、.tar.bz2 或 .tbz2)表示使用了特定的压缩方法(如 gzip 或 bzip2)。

常用选项含义
-c创建.tar格式的包文件
-x解开.tar格式的包文件
-z使用 gzip 压缩或解压缩文件。归档文件扩展名通常为 .tar.gz 或 .tgz。
-j使用 bzip2 压缩或解压缩文件。归档文件扩展名通常为 .tar.bz2 或 .tbz2。
-v显示详细信息。在创建或解压缩归档文件时,会显示正在处理的文件名。
-f表示使用归档文件
-t列出归档文件的内容。
-C解压时指定释放的目标文件夹——绝对路径
实例格式含义
tar -zcvf dntest.tar.gz 123.txt使用gzip打包
tar -zxvf dntest.tar.gz -C /opt/dntest使用 gzip解包到指定位置
tar -jcvf usershow.tar.bz2 passwd shadow使用 bzip2压缩这两个文件
tar -jxvf usershow.tar.bz2 -C /opt/使用 bzip2解压缩到指定位置

vim文本编辑器

用于创建或修改文本文件、维护Linux系统中的各种配置文件
Linux中最常用的文本编辑器:
vi:类UNIX操作系统的默认文本编辑器
vim:vim是vi文本编辑器(一般简称为vi编辑器)的增强版本

vi编辑器的工作模式

三种工作模式:
命令模式、输入模式、末行模式
三种模式的切换:
命令模式→a、i、o等键→输入模式
命令模式→shift+:末行模式
末行模式、输入模式→esc→命令模式

命令模式的基本操作

光标移动

操作类型操作键具体功能
方向移动↑↓←→上、下、左、右
翻页page down/ctrl+F向下反动一整页内容
-page up/ctrl+B向上翻动一整页内容
行内快速跳转Home键或者^、数字0跳转至行首
-End键或$键跳转至行尾
行间快速跳转1G或者gg跳转到文件的首行
-G跳转到文件的末尾行
-#G跳转到文件的第#行
行号显示:set nu在编辑器中显示行号
-:set nonu取消编辑器中的行号显示

复制、粘贴、删除

操作类型操作键具体功能
删除x或Del删除光标处的单个字符
-dd删除当前光标所在行
-#dd删除从光标所在行开始的#行内容
-d^删除当前光标之前到行首的所有字符
-d$删除当前光标处到行尾的所有字符
复制yy复制当前行整行的内容到剪贴板
-#yy复制从光标所在行开始的#行内容
粘贴p将缓冲区的内容粘贴到光标位置处之后
-P粘贴到光标位置处之前

文件内容查找

操作键功能
/word从上而下在文件中查找字符串word
?word从下而上在文件中查找字符串word
n定位下一个匹配的被查找的字符串
N定位上一个匹配的被查找的字符串

撤销编辑以及保存退出

操作键功能
u按一次取消最近的一次操作;重复多次则恢复多步操作
U取消对当前行所作的所有编辑
ZZ保存当前的文件内容并且退出vi编辑器

末行模式的基本操作

保存文件以及退出vi编辑器

功能命令备注
保存文件:w保存修改的内容
-:w/root/newfile另存为其他文件
退出vi:q未修改退出
-:q!放弃对文件内容的修改,退出vi
保存文件,退出vi:wq或x保存修改的内容并退出

打开新文件或者读入其他内容

命令功能
:e ~/install.log打开新的文件进行编辑
:r /etc/filesystems在当前文件中读入其他文件内容

文件内容替换

命令功能
:s /old/new将当前行中查找到的第一个字符串替换为“new”
:s /old/new/g将当前行中查找到的所有字符串“old"替换为“new”
:#,# s/old/new/g在行号“#,#”范围内替换所有的字符串“old”为“new”
:% s/old/new/g在整个文件范围内替换所有的字符串“old”为“new”
:s /old/new/c在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认
  • 13
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值