一.Linux操作系统
1.定义:
自由和开放源码的操作系统,Linux可以被安装在计算机的设备当中。
2.特点:
多用户多任务,丰富的网络功能,安全性高,移植性强 有一定的兼容性,良好的用户界面,性能好,响应速度快。
3.定位:
专业的开发人员使用的操作系统
专门为IT从业者配套的专业操作系统
4.Linux介绍
1.Linux内核与发行版
linux内核版本:
内核是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸 设备与应用程序间的抽象层。
Linux内核版本又分为稳定版和开发版,两种版本是相互关联,相互循环;
稳定版:
具有工业级强度,可以广泛地应用和部署。新的稳定版相对于较旧的只是修正一些bug或 加入一些新的驱动程序。
开发版:
由于要试验各种解决方案,所以变化很快。
Linux发行版本:
Linux发行版通常包含了包括桌面环境、办公套件、媒体播放器、数据库等应用软件。 目前市面上较知名的发行版有Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、 OpenSUSE、Arch Linux、SolusOS 等
5.Shell解释器
1.定义:
shell是一类解释器的总称,有bash、sh、csh等,它的作用是人机交互,可以理解为翻译 器。centos默认使用的是bash,只要登录一个终端,就会自动开一个bash
2.工作原理:
用户输入命令→交给shell翻译→内核处理执行→内核将执行结果反馈给shell→shell再翻译成人类语言→用户界面用户登录Linux系统机会自动加载shell程序,bash为默认的shell,文件位于/bin/bash
二.Linux命令
1.Linux命令分类
| 内部命令 | 外部命令 |
|---|---|
| 集成于shell解释器程序内部的一些特殊指令,也称为内建(Built-in)指令 | Linux系统中能够完成特定功能的脚本文件或二进制程序 |
| 属于shell的一部分 | 属于shell解释器程序之外的命令 |
| 没有单独对应的系统文件 | 每个外部命令对应了系统中的一个文件 |
| 自动载入内存,可以直接使用 | 必须知道其对应的文件位置,由shell加载后才能执行 |
2.命令执行的优先级
绝对路径>alias>内部命令>hash缓存表>外部命令
1.先看alias中是否有自定义命令,如果有则执行
2.在判断这个命令是内部命令还是外部命令,如果是内部命令则直接执行
3.如果是外部命令,先看hash缓存表中是否有相应命令,有则执行
4.hash缓存表中没有,则查找$PATH中是否有这个外部命令,有则执行,没有则报错
3.Linux快捷键
| 快捷键 | 作用 |
|---|---|
| Tab键 | 自动补齐 |
| 反斜杠“\” | 强制换行 |
| Ctrl+U组合键 | 清空至行首 |
| Ctrl+K组合键 | 清空至行尾 |
| Ctrl+L组合键 | 清屏 |
| Ctrl+C组合键 | 取消本次命令编辑 |
| Ctrl+a组合键 | 切换到行首 |
| Ctrl+e组合键 | 切换到行尾 |
4.基础命令
4.1 pwd命令
告诉当前位置,显示系统所在路径
4.2 cd命令
cd:切换目录(cd目标位置的名称指向的是目录名,只能目录之间切换,不能切换文件)
cd~:切换到家目录
cd/:切换到“/”目录
cd-:回到上次所在目录
cd..:返回上一级目录
cd.:留在当前目录不动
~:用户的家目录
/:根目录
绝对路径: 以根目录 / 为起点的路径,如 /usr/local/bin/cfssl
相对路径:直接使用文件名/目录名,代表的是以 当前目录 为起点的文件/目录
4.3 Is命令
Is:展现当前目录下的所有文件和目录,不包含隐藏文件,而且是简略查看不是详细查看
Is -a:显示当前目录所有内容,包含隐藏文件,以及.和..
Is -l:长格式显示文件 属性
Is -t:按时间排序
Is -S:按大小排序
Is -d:只显示当前文件夹的属性
Is -i:显示文件inode号,显示文件的身份证号
Is -r:倒叙显示
Is -R:递归 tree
Is -h:人性化
4.4 通配符
匹配文件名和目录名 不能匹配文件内容(只能进行匹配但是不能进行精确匹配)
?:匹配任意单个字符
*: 匹配任意长度字符
Is p*:显示已p开头
Is *p:显示已p结尾
4.5 alias命令
alias 别名命令='命令字 [选项] [参数]' #创建别名命令
alias #显示所有的别名命令
unalias #取消别名命令
4.6 du命令
du:查看当前所在目录的内容大小
du -a:显示每一个文件占磁盘空间的大小,包含隐藏文件
du -h:人性化展示当前所在目录的内容大小
du -sh*:统计当前目录下每一个文件的大小,以列表的形式展示
du -s:总大小
du -d:数字显示层级
4.7 mkdir命令
mkdir:创建空文件夹
mkdir -p:递归创建目录
4.8 touch命令
touch:创建空文件,更新文件时间
特点:如果文件已存在,创建相同名称不会提示文件名重读,也不会覆盖原文件的内容
4.9 cp命令
cp:复制文件/目录制定路径
cp -r:复制目录
cp -p:保留权限复制
cp -a:完整保留所有信息和权限,同时可以直接复制目录
cp -f:强制覆盖
4.10 mv命令
mv:可以剪切,相当于移动文件位置,最后的参数必须是个目录,否则他会认为是改名
可以重命名,原来的文件或者目录就不在了,会形成一个新的文件名或者目录名,但是不影响文件或目录的内容
cp也可以对文件或者目录重命名,cp重命名目录是:加-a选项,-a强制复制,但是最后的参数必须是一个目录
4.11 find命令
find -name:按名称查找文件 可以使用通配符
find -type:按文件属性查找
find -type f:找普通文件 d目录c字符b块s套接字 p管道 l软链接
find -user:按文件的主人查找
find -nouser:无主文件没有主人的文件用户被删除
find -inum:根据inode号去找文件
find -empty:查找空文件
find -size:按照文件大小去查找文件
find -mtime:按照时间 去找文件
4.12 其他搜索命令
which:就是查找命令的位置,如果命令有别名,还可以查找到他的别名。
whereis:搜索系统命令,不能搜索系统命令。不仅能够查找到二进制命令的位置,还可以查找到命令的帮助文档位置
5软连接和硬连接的区别
| 软连接 | 硬连接 |
|---|---|
| 与源不是相同文件 | 与源是相同的文件 |
| 与源不同 | 与源相同 |
| 与源不同,为l | 与源相同 不是l |
| 可以对目录创建 | 不能对目录创建 |
| 文件大小与源路径字符有关 | 与源文件一样 |
| 修改源一起生效 | 修改源一起生效 |
| 删除源失效 | 删除源无影响 |
| 原本权限不同,修改权限不一起生效 | 修改权限一起生效 |
| 与源连接数不一样,软链接始终为1 | 链接数一样,有多少个硬链接就是连接数 |