目录
系统目录
目录结构和每个目录的作用
目录结构
常见目录的作用
/root 是管理员的家目录,只有管理员的家目录在根目录下。
/home 是普通用户的家目录,因为普通用户的权限不够,一般无法直接读写,所以特意创建了一个家目录,方便普通用户的读写操作。
/boot 系统文件 相当于c盘的Windows,不能动
/dev 硬件设备,linux一切皆为文件,硬件设备也是以文件的形式保存的
/etc 存放系统默认程序以及一些第三方安装程序的配置文件,我们会进入目录修改一些配置文件,只改和我们相关的,不想关的不要去改。
/bin 是保存系统命令的文件目录 所有用户都可以执行的命令
/sbin 是保存系统命令的文件目录 只有管理员可以执行的命令
/var 存放系统的可变化文件,存放各种日志文件,主要就是给我们看日志用的
/opt 存放第三方应用程序或者是用户定义的一些脚本文件等等,和系统没有任何关系的文件
/lib 存放系统程序的动态连接共享库文件,类似于Windows 的dll文件
/usr 存放系统用户的工具和第三方安装的程序, rpm yum 编译安装
/media 媒体文件
/proc 存放映射系统信息的文件
/mnt 挂载存储设备
/tmp 存放系统的临时文件
我们一般就操作几个目录:root home etc opt var/log
文件管理
cat查看文件内容 全量查看文件内容,一般文件可以使用,如果文件的内容太大,全量打开速度会很慢,cat只能查,不能写。
cat -n 对所有行输出行的编号,简称行号
cat -b 空行不算在行号内,对空白行不编号
cat -s 把多个连续的空行,替换成一个空行
分页查看:
more:
空格自动翻页到行尾
b 上一行
回车 下一行
q 退出阅读
less:
使用上下键翻页
搜索:/ 搜索内容 回车
退出q
head 从头往后看
head -n 使用-n选项一定跟数据,否则报错
tail 命令从尾部查看文件的一定内容,行数限制。动态查看,有变化会立刻显示屏幕上。
tail -n 可以指定从尾部往上查看的行数,默认是10行
tail -f 动态查看,默认是跟踪最后十条
tail -10f 文件
第一次查看的时候,只看最后的10行,如果内容发生变化,超过10行就是全量展示
wc 全名:word count 统计文件的单词数量以及其他信息
wc -l 统计文件当中的行数
wc -w 统计文件内容中单词的个数
wc -c 统计文件内容的字节数,即统计文件内容的大小
grep 查看文件内容,过滤文本内容,grep是Linux的文本三剑客之一。
grep -n 显示匹配内容,还可以显示匹配内容的行号
grep -e 实现多个查看条件的匹配 相当于or
grep -v 取反,就是显示不包含匹配内容的行
grep -c 匹配到所在的内容的总行数,不是匹配字符的次数
以上都是查看文件内容,或者对文件内容条件过滤。
| 管道符
在一个命令只能有一个命令开头,通过管道符 | ,可以把多个命令连接起来,处理文本内容的命令,都可以使用管道符连接。
特点:把前一个命令的处理结果,做为管道符后一个命令的参数
命令打印出来的结果,也是文本内容
打包和解包
压缩和解压缩
.zip .rar
.gz .bz2
bz2 压缩的文件小,但是速度比较慢
gz 压缩速度比较快,压缩的文件相对较大
tar 就是压缩和解压缩。只能针对gz、bz2文件
tar -z 调用gzip gz 的方式进行压缩或者解压
tar -j 调用bzip2 bz2的方式进行压缩或者解压
tar -c 创建.tar格式的包文件 打包 压缩
tar -x 解开 .tar格式的包文件 解包 解压
tar -v 输出详细的信息
tar -f 使用归档文件(这是必须加的选项,不论是打包还是解包)
tar -C 解压时指定解压文件释放的路径 (绝对路径)
zip 解压 unzip -d
rar unrar
vim 文本编辑器
vi 老版本 vim vi的升级版
使用vim打开文本,第一个界面,就是命令模式,又叫视图模式,只能看不能改
!vim //返回上一次编辑的文件
编辑模式:i进入
a:在当前光标的位置之后插入内容
i:在当前光标位置之前插入内容
A:光标移动到所在行的行尾,开始插入内容
大写I:在当前行的行首开始插入内容
o:在当前行的下一行开始插入内容
O:在当前行的上一行开始插入内容
命令模式:翻页移动 Page Down键或 Ctrl+F 向下翻动一整页内容
Page Up键或 Ctrl+B 向上翻动一整页内容
行内快速跳转 Home键或^键、数字 0键 跳转到本行的行首
End 键或$键 跳转到本行的行尾
行间快速跳转 1G 或 gg 转到文件内容的第 1 行
G 跳转到文件的最后一行
#G 跳转到文件中的第#行(其中“#”号用具体数字替换)
M 跳转至当前页的中间位置
L 当前页面的最后一行
H 当前页面的第一行
底行模式:
显示行号 :set nu 在编辑器中显示行号
set nonu 取消行号显示
删除:x或Delete键 删除光标处的单个字符
dd 删除当前光标所在行(有剪切功能)
#dd 删除从光标处开始的#行内容 -----#表示几行
d^ 删除当前光标之前到行首的所有字符
d$ 删除当前光标处到行尾的所有字符
dw 删除光标处的整个单词
替换字符:R 或 Shift+r 替换当前光标处字符
复制:yy 复制当前行整行的内容到剪贴板
#yy 复制从光标处开始的#行内容 ----#表示几行
粘贴:p 粘贴到光标所在行之下
P 粘贴到光标所在行之上
查找 : /word 从当前光标处开始向后进行查找字符串“word”
?word 从当前光标处开始向前进行查找
n 定位下一个匹配的被查找字符串
N 定位上一个匹配的被查找字符串
撤销 : u 按一次取消最近的一次操作;重复u键,恢复多步操作
保存退出 :w 保存修改的内容
:w 新文件名 另存为其它文件
:q
:q! 放弃对文件内容的修改并退出
ZZ或:wq、:x 保存当前的文件内容并退出vi编辑器
打开新文件 :e 其它文件名 打开新的文件进行编辑
读入文件内容 :r 其它文件名 在当前文件中读入其他文件内容
文件内容替换 :s /old/new 将当前行中查找到的第一个字符串“old” 串替换为“new”
:s /old/new/g 将当前行中查找到的所有字符串“old” 替换为“new”
:#,# s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”
:% s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”
:1,5 m 10 将1-5行的内容剪切粘贴到第10行下面
:1,5 co 10 将1-5行的内容复制粘贴到第10行下面
s /old/new 一定要把光标移动到指定的内容上,才能进行替换,单个替换,不是整行替换