Linux 目录和文件管理
Posted m-zhuang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 目录和文件管理相关的知识,希望对你有一定的参考价值。
一、Linux目录结构
目录 | 作用 |
---|---|
/root | 超级管理员的家目录 |
/home/用户名 | 普通用户的家目录 |
/bin | 命令文件目录,存放所有用户可以执行的目录 |
/sbin | 管理员操作目录,存放只有管理员才可以使用的命令 |
/boot | 存放系统内核、启动文件目录 |
/dev | 存放设备文件(硬盘、光驱) |
/etc | 存放系统程序和系统配置文件 |
/var | 存放各种日志文件 |
/lib | 存放系统程序的动态连接共享库文件 |
/usr | 存放用户工具和程序 |
/media | 可拆卸的媒介挂载点,例:U盘、光驱 |
/proc | 存放映射系统信息的文件 |
/mnt | 用于临时挂载存储设备的目录 |
/opt | 第三方应用程序安装所存放的目录 |
/tmp | 存放系统的临时文件 |
二、文件管理
1. cat 显示文件内容
全量查看文件内容
格式:
cat [选项] 需要查看文件内容的路径
选项含义:
选项 | 含义 |
---|---|
-n | 对所有行进行编号 |
-b | 空白行不编号 |
-s | 将所有连续的空行替换成一个空行 |
操作
① 查看/data/passwd文件内容
② 查看/data/passwd文件内容显示行号
[root@localhost data]# cat -n /data/passwd
③ 查看/data/passwd文件内容显示行号但空行不显示行号
[root@localhost data]# cat -nb /data/passwd
④ 查看/data/passwd文件内容显示行号但空行不显示行号且连续的空行只显示一行
[root@localhost data]# cat -nbs /data/passwd
2. more 显示文件内容
翻页查看文件内容
格式:
more [选项] 文件名
基本操作:
操作 | 作用 |
---|---|
空格键 | 下一行,到文末自动退出 |
b 键 | 上一行 |
enter 键 | 一行一行滚动,到文末自动退出 |
q 键 | 退出 |
3. less 显示文件内容
翻页查看文件内容
格式:
less [选项] 需要查看的文件路径
操作 | 作用 |
---|---|
/需要查找的字符 | 查找,n 键向下查找,N 键向上查找 |
Page Up 键 | 向上翻页 |
Page Down 键 | 向下翻译 |
其余 | 参考 more 和 cat |
实操:
less 查看 /data/passwd 文件内容,并查找出 root
[root@localhost data]# less -s /data/passwd
# 底行模式
/root
4. head 显示文件内容
head -n 具体数字 文件路径 (不加具体数字,默认为10)
查看文件前多少行
实操:
head 查看 /data/passwd 文件前三行
[root@localhost data]# head -n 3 /data/passwd
5. tail 显示文件内容
查看文件内容后多少行也可以动态查看文件内容的后多少行
格式:
tail [选项] 需要查看的文件路径
命令 | 作用 |
---|---|
tail -n 具体数字 文件路径 (不加具体数字,默认为10) | 查看文件内容的后多少行 |
tail -f 具体数字 文件路径 (不加具体数字,默认为10) | 动态查看文件内容的后多少行(按CTRL + C 退出) |
实操:
动态查看 /var/log/messages 的后十行
打开两个连接窗口,第一个窗口观察,第二个窗口重启防火墙
# 第一个窗口
[root@localhost data]# tail -10f /var/log/messages
# 第二个窗口
[root@localhost ~]# systemctl restart firewalld.service
第二个窗口:
第一个窗口:
6. tr 转换
格式:
tr [选项] string
命令 | 作用 |
---|---|
tr -d string | 出现string就删除 |
tr -s ‘ ’ | 压缩空格,1 2 3 ---> 1 2 3 |
tr -c str1 str2 | 出现str1转换成str2 |
7. wc 统计文件内容
格式:
wc [选项] 文件路径
选项功能
选项 | 功能 |
---|---|
-l | 统计行数 |
-w | 统计单词 |
-c | 统计文件内容的字节数 |
实操:
① 查看 /data/passwd 文件有多少行
[root@localhost data]# wc -l /data//passwd
② 查看 /data/passwd 文件有多少单词
[root@localhost data]# wc -w /data/passwd
③ 查看 /data/passwd 文件有多少字节
[root@localhost data]# wc -c /data/passwd
8. grep 查找文件内容
格式:
grep [选项] [查找条件设置] 文件路径
选项作用:
选项 | 作用 |
---|---|
-i | 查找时不区分大小写(默认) |
-v | 显示不匹配查找条件的所有行(反向查找) |
-n | 显示行号 |
-c | 只输出匹配到的总行数 |
-e | 多个条件查找(相当于 or) |
-E | 支持正则表达式(相当于使用egrep命令) |
实操:
① 显示 /data/passwd 文件内容中含有user的行并显示所在文件中的行号
[root@localhost data]# grep -n user /data/passwd
② 显示 /data/passwd 文件内容中含有user的总行数
[root@localhost data]# grep -c user /data/passwd
② 显示 /data/passwd 文件内容中不含有user的行并显示所在文件中的行号
[root@localhost data]# grep -vn user /data/passwd
③ 显示 /data/passwd 文件内容中含有user或者含有root的行并显示所在文件中的行号
[root@localhost data]# grep -ne user /data/passwd -e root /data/passwd
9. vim 文件文本编辑
格式:
vim 文件路径
命令模式下:
按键 | 作用 |
---|---|
a | 在光标之后插入内容 |
i | 在光标之前插入内容 |
o | 在光标下一行插入新行 |
O | 在光标上一行插入新行 |
A | 在光标所在行行尾插入内容 |
I | 在光标所在行行首插入内容 |
x | 删除光标上的字符 |
dd | 删除光标所在行 |
u | 撤销上一次操作 |
gg | 光标跳至首行 |
G | 光标跳至末行 |
数字gg 或 数字G | 光标跳至指定行 |
yy | 复制 |
数字yy | 从光标当前行向下复制指定行 |
p | 粘贴 |
输入字符 | 作用 |
---|---|
:w | 保存 |
:q | 不保存退出 |
:q! | 强制退出 |
:wq! | 强制保存退出 |
:set nu | 显示行号 |
:/srting | 查找string |
:e 其它文件路径 | 打开新的文件进行编辑 |
:r 其它文件路径 | 在当前文件中读入其它文件内容 |
: s /str1/str2 | 将当前行中第一个str1替换成str2 |
: s /str1/str2/g | 将当前行中所有str1替换成str2 |
:num1,num2 s/str1/str2/g | 将num1行到num2行所有的str1替换成str2 |
:% s/str1/str2/g | 将所有的str1替换成str2 |
:num1,num2 m num3 | 将num1到num2行剪切至第num3行 |
:num1,num2 co num3 | 将num1到num2行复制至第num3行 |
10. tar 压缩和解压
格式:
tar [选项] 压缩文件名称 需要压缩的文件
tar [选项] 需要解压的文件 -C 指定解压到的目录
选项作用:
选项 | 作用 |
---|---|
-c | 创建 .tar格式的包文件 |
-x | 解压 .tar格式的包文件 |
-C | 解压至指定目录(绝对路径) |
-f | 表示归档文件(必须要加) |
-v | 输出详细信息 |
-j | 调用bzip2程序进行压缩或解压 |
-z | 调用gzip程序进行压缩和解压 |
bz2 和 gz 的区别:
bz2 比 gz 压缩出的包小,但时间慢
gz 比 bz2 压缩出的包大,但时间快
实操:
① 用 gzip程序 将 /data/file1 和 /data/file2 压缩为 test1.gz.tar 压缩包文件
[root@localhost data]# tar -zcvf test1.tar.gz file1 file2
② 用gzip程序解压 /data/test1.gz.tar 至 /data/dir1 目录下
[root@localhost data]# tar -zxvf test1.tar.gz -C /data/dir1
③ 用 bzip2程序 将 /data/file1 和 /data/file2 压缩为 test2.bz2.tar 压缩包文件
[root@localhost data]# tar -jcvf test2.tar.bz2 file1 file2
④ 用bzip2程序解压 /data/test2.bz2.tar 至 /data/dir2 目录下
[root@localhost data]# tar -jxvf test2.tar.bz2 -C /data/dir2
Linux命令——目录和文件管理命令
一、Linux系统的目录结构
1.根目录(/):顶层目录,某些系统中的唯一分区。
2./bin命令文件目录:包含Linux命令的二进制可执行文件。
3./boot目录:存放系统的内核文件和引导装载程序文件。
4./dev设备文件目录:存放连接到计算机上的设备(磁盘驱动器、终端、光驱和网卡)的对应文件。
5./etc目录:存放系统的大部分配置文件和子目录。
6./home目录:包含系统中各个用户的主目录。
7./lib目录:存放各种编程语言库。
8./lost+found目录:系统奔溃时碎片文件存放的位置,可通过手工修复。
9./opt目录:软件包安装的位置,某些第三方应用程序通常安装在这个目录。
10./root目录:系统管理员的主目录。
11./usr目录:存放一些不经常变化的数据,以及系统下安装的应用程序目录。
12./mnt目录:用来临时挂载文件系统,为某些设备提供默认挂载点。
13./proc目录:虚拟的文件系统,该目录的文件是内存中的映像。可以查看该目录中的文件获取有关系统硬件运行的详细信息。
14./sbin目录:保存系统管理员或者root用户的命令文件。/usr/sbin存放了应用软件,/usr/local/sbin存放通用的根用户权限的命令。
15./tmp目录:存放临时文件,该目录的所有文件会被定时删除。(学习过程中尽量将测试文件建在该目录下)
16./var目录:保存系统中经常变化的内容。如系统日志、邮件文件等。
二、目录管理命令
1.ls 列目录命令:ls [选项] [目录或文件名]
常用选项:-a 列出该目录下所有文件,包含隐藏文件。
-l 以长格式显示文件的详细信息。
-m 以逗号分隔方式紧凑显示文件列表。
-R 递归式的显示指定目录的各个子目录中的文件。
-i 在输出的第一列显示文件的索引节点号。
-r:以文件名反序排列并输出目录内容列表。
-S:以文件大小降序排列并输出目录内容列表。(-Sl/-Slr)
-t:按时间排序并输出。(-t/-rt)
2.cd 改变当前工作目录命令:cd [目录名]
常用命令:cd .. 上移一层目录
cd /home/a 移动到指定目录
cd 移到自己的主目录
3.mkdir 创建目录命令:mkdir [选项] [目录名]
常用选项:mkdir -p a/b/c 在当前目录下递归生成a、b、c三个目录。
mkdir a b 在当前目录下同时生成a、b两个目录。
以上是关于Linux 目录和文件管理的主要内容,如果未能解决你的问题,请参考以下文章