一、OS工作原理
- 本质上都是用户操作shell,然后shell通过内核请求资源,内核调用硬件计算并产生反馈。
- shell分为GUI(graphical user interface)和CLI(command line interface)
- 在终端中使用CTRL+shift+‘+’增大字体,使用CTRL+‘-’减小字体大小
二、Linux目录结构
'/':是Linux的根目录,为最顶级目录
/boot:系统启动目录,包含启动配置文件以及内核文件
/dev:设备文件保存位置
/etc:系统配置文件保存位置
/home:普通用户的家目录
/media:挂载点目录
/mnt:挂载点目录
/run:挂载点目录
/opt:软件存放位置
/proc:进程文件存放位置
/srv:资源文件存放位置
/sys:系统资源文件存放位置
/tmp:临时文件存放位置
/usr:Linux软件默认安装目录
/var:动态数据保存位置,存放log文件
/bin > /usr/bin:存放普通用户可执行命令
/lib > /usr/lib:存放32位的函数文件
/lib64 > /usr/lib64:存放64位的函数文件
/sbin > /usr/sbin:存放超级用户可执行命令
/root:root用户的家目录
三、文件管理
①、切换用户
su:切换用户
su - username
su - 和 su - root 是相同的
②、文件管理及切换目录
Linux的文件管理
文件的增删改查
文件的创建(文本文件的创建,目录文件的创建)
文件的删除(文本文件的删除,目录文件的删除)
文件的修改(文件内容的修改,文件属性的修改)
文件的查看(文件内容的查看,文件属性的修改)
cd path(路径:绝对路径或相对路径)
cd .. (切换至当前目录的上层目录)
cd - (切换至上次所在目录)
cd <sub> (切换至家目录,与cd相同)
ctrl+shift+t:再打开一个shell
alt+1</sub>9:切换shell
ctrl+d:关闭当前shell
③、查看文件属性
文件的查看:ls
-l:查看文件属性
-a:查看隐藏文件
-h:将文件大小的单位转换为人所习惯使用的单位
-d:显示目录自身的属性,而非目录下的文件属性
[root@centos85 ~]
total 4
drwxr-xr-x. 2 root root 24 Feb 24 23:24 1
-rw-------. 1 root root 1086 Feb 23 19:34 anaconda-ks.cfg
显示的内容中,第一列代表文件类型;“-”代表普通文件,“b”代表块设备文件(存储设备),“d”代表目录文件,“l”表示快捷方式(软链接)
剩下的九列,以每三列为一部分,第一部分代表文件所有者的权限,第二部分为文件所属组的权限,第三部分为其他人的权限。rwx分别代表读写执行权限。
权限九列后的“.”表示该文件具备selinux的安全上下文;若是“+”,则表示该文件设置了acl权限。
后面一列表示该文件的链接个数。
后面分别为文件所有者和所属组。
随后是文件大小,默认单位为字节(Byte)
1024Byte=1KB
1024KB=1MB
1024MB=1GB
1024GB=1TB
1024TB=1PB
1024PB=1EB
之后为文件的修改时间
最后一列为文件的文件名
④、文件内容的查看
cat 文件路径
head 文件路径
head -n 5 文件路径
tail 文件路径
tailf 文件路径
tail -f 文件路径
more 文件路径
回车:下一行
空格:下一页
q:退出
不支持向前翻页
less 文件路径
less功能比more多了向前翻页,其他一致
⑤、文件的创建及删除
touch 文件路径
mkdir 目录路径
-p:递归创建
rmdir 目录路径
rm 文件路径
-r:删除目录
-f:强制删除,不需要确认
-i:询问是否删除,默认带此选项
cp 源文件 目标文件
-r:对目录进行操作
-a:保留文件原有属性
mv 源文件 目标文件
⑥、通配符
"?":表示匹配任意一个字符
"*":表示匹配0个或任意多个的字符
"\":转义字符,可以使之后的符号变为普通符号
"[]":表示匹配中括号中的任意一个字符
"[a-z]":表示所有小写字符中的一个
"[A-Z]":表示所有大写字符中的一个
"[0-9]":表示所有数字
"[^]"或"[!]":表示非
四、vim编辑器及重定向
①、vim编辑器
vim:编辑文本文件的内容
四大模式:命令模式、末行模式、编辑模式、可视化模式
hjkl分别代表上下左右(有些系统没有上下左右键,只能使用这些命令)
gg:将光标移动至文本开头
G 或 shift+g:将光标移动至行尾
nG:可将光标移动至第n行
x:删除光标位置处的字符
X(大):删除光标左侧字符
u:撤回上次的操作,几乎可无限撤回,直到恢复为打开文本时的样子
dd:删除光标所在行
yy:复制光标所在行
p:将上次yy或dd的内容粘贴在下面
P(大):将上次yy或dd的内容粘贴在上面
i:从光标所在位置的左侧开始插入
a:从光标所在位置的右侧一个字符开始插入
I:从光标所在行的行首开始插入
A:从光标所在行的行尾开始插入
o:从光标所在行的下一行另起一行开始插入
O(大):从光标所在行的上一行另起一行开始插入
查看指定字符串:使用"/"进入末行模式,之后输入想要搜索的内容(n:下一个;N:上一个)
:w(保存不退出)
:q(不保存推出)
:x(保存退出)
:set number(显示行号)
:set nonumber(取消行号显示)
:n1,n2s/old content/new content/global
- 将n1行到n2行的old content替换为new content
- g表示全局,不加的话值替换每一行找到的第一个
②、输出重定向
> :将正确的结果重定向,覆盖
>> :将正确的结果重定向,追加
2> :错误,覆盖
2>> :错误,追加
&> :全部,覆盖
&>> :全部,追加
③、输入重定向
mail
cat
五、管道及快捷键
①、管道
管道右边都是接收输入的命令
- cat
- more
- less
- mail
- grep
- head
- tail
-i:不区分大小写
-v:反向抓取(抓取除指定内容之外的所有)
-A:after
-B:before
-n:显示行号
-E:正则表达式(expression)
^:表示以什么开头
$:表示以什么结尾
.:匹配任意一个非空字符
.*:匹配任意非空字符串,表示有1~n个
?:表示前一字符重复0次或1次
.?:表示任意一个或两个字符
②、获取Linux帮助及快捷键
- man
- info
- help
- 查阅官方文档
- 百度
- 谷歌
- 软件本身的帮助文档
ctrl+l:清屏
ctrl+a:将光标移动至行首
ctrl+e:将光标移动至行尾
↑和↓:可以使用上次的命令,↓相反
ctrl+u:删除从光标到行首的内容
ctrl+y:还原删除内容
ctrl+w:删除光标左侧第一个字符串
hisory:查看历史使用的命令
!命令或数字:使用最近一个相同的命令
tab:补全,一下补全,两下列出所有补全内容