一.操作系统
1.是什么
管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。
2.主流的操作系统
- 桌面操作系统:Windows系列,MacOs,Linux;
- 服务器操作系统:Linux,Windows Server;
- 嵌入式操作系统:Linux;
- 移动设备操作系统:Androids(底层也是Linux),ios。
二.Linux操作系统
1.是什么
是一套免费使用和自由传播的操作系统。
开源免费,安全稳定,可移植性好,高性能。
I.Linux系统的版本及分支
- Redhat:目前,全球最大的Linux发行厂商,功能全面、稳定。Redhat 被 IBM 收购!
- Ubuntu:目前,是Linux桌面操作系统做的最好的。
- Centos:免费版的redhat,Centos 基于 redhat 发行版基础之上,再重新编译发布的版本。
- 目前 Centos 已经被 Redhat 公司收购,但是依然免费。
- deepin:目前,国内做的最好的一款Linux发行版。
II.Linux与 Windows根目录区别对比
- Windows 系统可以拥有多个盘符, 如 C盘、D盘、E盘;
- Linux的目录结构是一个树型结构的文件系统;Linux没有盘符这个概念, 只有一个根目录 /, 所有文件都在它下面。
2.Linux常用的目录介绍
- /:根目录,在 linux 下有且只有一个根目录,所有的东西都是从这里开始
- /bin:二进制命令所在的目录
- /etc:系统配置,启动程序
- /home:普通用户的家,目录默认数据存放目录
- /opt:额外的应用软件包
- /root:Linux超级权限用户root的家目录
- /sbin:和管理系统相关的命令,【超级管理员用】
- /usr:用户或系统软件应用程序目录
- /boot:系统引导程序所需要的文件目录
- /dev:设备软件目录,磁盘,光驱,
- /lib:共享库文件和内核模块存放目录
- /mnt:临时挂载储存设备的挂载点
- /proc:操作系统运行时,进程信息和内核信息存放在这里
- /tmp:临时文件目录,这个目录被当作回收站使用
- /var:存放系统日志的目录
3.怎么用
I.Linux命令的基本格式
格式组成:
命令主体 -命令选项 命令参数
常见命令形式:
1) 命令主体
2) 命令主体 -命令选项
3) 命令主体 参数
4) 命令主体 -命令选项 命令参数
特点:命令主体必须存在, 而选项和参数都是可选的
II.查看命令帮助信息方法
方法一:
命令主体 --help : 可以查看命令具备哪些选项及选项含义
方法二:
man 命令主体 : 查看命令的手册信息
注意: 默认情况下系统手册是英文的, 可以自行扩展修改为中文, 实际应用推荐使用方法一
III.Linux命令的共通知识点
①.通配符的使用
通配符: 又叫文件名替换符号, 符号具备特殊含义, 例如: 文件名: test , 通配符可以写成: ???? 或 *
* : 代表可以匹配任意长度的文件名(所有)
? : 代表可以匹配单个字符, 如果目标文件名有多个字符, 该符号可以使用多个
[]: 括号内的内容表示一个范围, [abc] : 代表匹配文件名是 a 或 b 或 c, 等价于 [a-c]
②.绝对路径和相对路径
绝对路径: 路径源头固定不变, 常见有两个: '/': 根目录; '~': 当前用户的家目录
相对路径: 以当前所在路径为源头, 常见的表示形式有两个: '.':当前路径下; '..':当前目录的上一层(父层级)
IV. Linux常用命令
i.文件和目录命令
- ls : 展示当前路径下有哪些文件
- ls -a : 显示当前路径下的所有文件(包含隐藏文件(文件名以.开头的))
- ls -l : 显示当前路径下文件的详细信息
- ls -al : 显示当前路径下文件的详细信息(包含隐藏文件)
- pwd : 查看当前所在的路径位置(涉及到路径切换(cd 命令)时, 确认路径时使用)
- ls : 查看当前路径下有哪些文件(对路径下文件进行了修改(创建/复制/移动/删除)时使用)
- cd : 切换路径(更换操作目录时使用)(常和绝对路径及相对路径配合使用)
- touch : 创建普通文件(单文件: touch 文件名 多文件: touch 文件名1 文件名2 ...)
- mkdir : 创建目录文件(单文件夹: mkdir 文件夹名 多文件夹: mkdir 文件夹名1 文件夹名2 ...)
- cp : 复制文件/文件夹(文件: cp -i 源文件 目标文件夹 目录: cp -r 源文件夹 目标文件夹)
- mv : 移动文件/文件夹(文件: mv 源文件 目标文件夹 目录: mv 源文件夹 目标文件夹)
- mv : 改名(mv 源文件名 新名字)(新名字必须是当前目录下不存在的文件名!)
- rm : 删除文件/文件夹(文件: rm 文件名 目录: rm -r 文件夹名)
- rm : 删除所有文件和文件夹(rm -r *)
-clear : 清空屏幕操作, 快捷键: Ctrl + L
-> : 重定向符号(将左侧命令的结果输出到右侧的文件中)(反复执行,文件原有内容会被替换)
->> : 追加重定向符号(将左侧命令的结果输出到右侧的文件中)(反复执行,内容追加, 文件原有内容不会被替换)
-cat : 查看文件内容(格式: cat 文件名)(适合用于查看文件内容较少的文件)
-more : 以分屏形式查看文件内容(格式: more 文件名)(适合用于查看文件内容较多的文件)
-| : 管道符号(将左侧命令的结果传递给右侧命令当数据源)
-| : 例如: ls -al /usr/bin | grep mysql (从左侧命令的结果中查找 mysql)(管道符右侧命令多用: grep 和 more)
- chmod:
命令格式: chmod 权限 文件名
权限修改:
字母法
1. 组别代表字母: u:拥有者 g:用户组 o:其他人 a:以上所有
2. 赋权代表符号: +:增加 -:撤销 =:赋予
3. 权限代表字母: r:读取 w:写入 x:执行
4. 根据需求组合以上三个部分, 再设置权限即可
例如: chmod a=rwx demo 或 chmod u-r,g-w,o=x demo
数字法
1. 权限对应的数字: r:4 w:2 x:1
2. 分别累加每一个组别的权限值之和, 再设置权限即可
例如: chmod 755 demo 或 chmod 775 demo
文件权限修改注意事项:
1. 权限修改可以反复执行, 如果未达到目的, 可以再次修改
2. 究竟使用字母法还是数字法完全看个人喜好
- vim:
使用步骤:
1. vi 文件名 : 如果文件存在, 则打开文件; 如果文件不存在, 则新建文件.(命令模式)
2. 按字母 i 键 : 从命令模式切换至插入模式
3. 正常编辑文件内容
4. 按下 Esc 键 : 从插入模式切换至末行模式
5. 输入 ':', 后跟 wq, 再按一个回车 : 保存文件内容并退出
说明: w : 写入 q : 退出 !: 强制操作(!q : 强制退出不保存)
注意: vi 工具只要求能够实现对文件内容就行修改并报错操作即可, 其他更多操作自行了解!
ii. 查看日志文件信息命令
head : 可以查看文件开头内容(head 文件名:查看文件的前10行内容; head -行数 文件名:查看文件的前x行内容)
tail : 可以查看文件结尾内容(tail 文件名:查看文件的后10行内容; tail -行数 文件名:查看文件的后x行内容)
tail -f : 动态查看日志文件内容(格式: tail -f 日志文件名)
注意:
1. 系统相关日志存放位置: /var/log
2. 项目相关日志存放位置: 需要根据项目询问对应的开发人员
iii. 系统命令
①重启/关机/查看系统信息命令
reboot : 重启
shutdown -h now : 关机
cat /proc/version : 查看内核版本
cat /etc/redhat-release : 查看发行版本
②程序和进程操作相关命令
ps -aux : 查看当前系统下普通用户所有的进程信息
ps -ef:查看当前系统下所有用户所有的进程信息
常用用法: ps -aux | grep 程序名 : 能够获取目标程序的进程 ID
kill -9 进程ID : 通过进程ID关闭对应程序(-9: 强制关闭)
扩展:
top : 可以调用 Linux 系统下的"任务管理器", 可以动态查看所有的进程信息
③压缩与解压缩
tar 和 gzip
打包和压缩: tar -zcvf 压缩包名.tar.gz 目标文件/文件夹
解包和解压: tar -zxvf 压缩包名.tar.gz
扩展-指定解压位置: tar -zxvf 压缩包名.tar.gz 目标文件/文件夹 -C 解压位置文件夹
tar 和 bzip2
打包和压缩: tar -jcvf 压缩包名.tar.bz2 目标文件/文件夹
解包和解压: tar -jxvf 压缩包名.tar.bz2
扩展-指定解压位置: tar -jxvf 压缩包名.tar.bz2 目标文件/文件夹 -C 解压位置文件夹
选项含义:
-z : gzip(压缩/解压)
-j : bzip2(压缩/解压)
-c : 打包
-x : 解包
-v : 显示过程
-f : 指向文件
-C : 指定解压路径
zip 和 unzip
压缩: zip -r 压缩包名 目标文件/文件夹
解压: unzip -d 解压位置文件夹 压缩包名
④网络和服务管理命令
ifconfig:查看主机IP地址
netstat -anptu : 可以获取当前系统的网络相关信息(获取端口号信息)
lsof -i:端口号 : 查看占用某一端口的的程序名称及进程ID(需要 root 用户权限)
注意:
1.可以通过 kill -9 进程ID 命令完成对端口占用程序的移除
⑤文件软链接
ln -s 源文件/文件夹 链接文件名 : 给源文件/文件夹创建链接文件(软链接: 等价于Windows系统的快捷方式)
注意:
1. 源文件/文件夹最好给绝对路径(防止链接文件被移动位置后失效)
2. 源文件/文件夹被删除, 链接文件会失效
3. 扩展: ln 源文件/文件夹 链接文件名 : 硬链接(此处不做了解)