目录

一、操作系统概述

1. 计算机原理

==冯、诺依曼==结构 (需要记住, 理解)

  • 核心思想叫做存储程序原理:把程序当做数据存储在计算机存储设备中,按顺序读取指令执行。
  • 冯、诺依曼计算机制造三个基本原则
    • 程序、数据底层采用二进制
    • 程序存储、顺序执行 , 自上而下, 从左到右
    • 计算机由五个部分组成: 运算器, 控制器, 存储设备, 输入设备, 输出设备
  • 5大硬件分类:
    • CPU:中央处理器(运算器控制器
    • 存储设备(内存: 一般为内存条、外存: 一般用硬盘, 当然软盘也属于外存)
    • 输入设备: 例如鼠标、键盘…
    • 输出设备: 例如显示器、音响

2. 操作系统概述

  • 定义:管理计算机硬件与软件资源的程序,同时也是计算机系统的内核与基石。没有操作系统称之为裸机。
  • 意义:使编程变得更简单。不需要再编写程序如何去控制协调硬件工作。操作系统也提供一个让用户与系统交互的操作界面(Windows和mac的图像页面,小黑窗命令行操作模式等)。

3. 操作系统分类

  • 桌面 windows macOS …
  • 服务器 linux unix windows server…
  • 嵌入式 μClinux
  • 移动设备 ios 安卓…

二、Linux系统概述

1. Linux起源与发展

需要记忆内容:
创始人: 林纳斯·托瓦兹
吉祥物: 企鹅
发行时间: 1991年

了解即可:
1991年8月25日:21岁的芬兰学生林纳斯·本纳第克特·托瓦兹在comp.os.minix Usenet新闻组中宣布了他在自由操作系统方面的工作。 9月1日:Linux 0.01在网上发布。

2. Linux内核kernel

内核可以理解为操作系统最核心的那一部分。但是只有内核是不方便使用的。

linux 开源免费,说的就是内核开源免费

  • Linux操作系统=Linux内核+GNU+其他应用操作

3. Linux发行版本

个人桌面版
面向个人用户。由于安装了图像(GUI)界面,界面美观、操作方便,比较适合新手,但相对于服务器版来说较消耗资源。企业开发中不会选择
常见的桌面版有Ubuntu、CentOS等。

企业服务器版
面向企业用户。系统稳定性好,资源消耗较小,满足企业需求,但基本都是命令行(俗称小黑窗)界面,需要有一定的基础才能上手操作。
比较常见的服务器版有RedHat企业版、CentOS、Ubuntu等。

三、VMware虚拟机

1. VMware作用

模拟出一套硬件供Linux系统软件使用,相当于模拟出了一台虚拟的计算机,虚拟的计算机在逻辑结构上与实际计算机没有什么不同。

2. VMware虚拟组件

所谓的虚拟指的是物理上不存在,但是逻辑上存在,功能跟物理实体一样的。

3. VMware NAT网络模式

给主机设置一个与虚拟机网络同网段的网卡与其进行通信, 当虚拟机需要上网时使用NAT服务转换成可以上网的IP即可。

4. VMware安装Centos7

傻瓜式安装, VMware各版本安装流程百度一搜一大堆,当然我也会在后续写出我安装的方法,包括上面所说的网络配置。(小声bb)

5. SSH协议与远程访问Linux

由于公司的服务器所在环境一般不适于程序员办公,且一个服务器有时有多名程序员同时操作,因此需要SSH协议远程免密登录进行远程操作。(待在那边干啥,又热又潮湿,当火热潮男:hot wet man?)

四、Linux常用的基础命令

1. 文件系统基本概念

文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)上的文件的方法和数据结构;即在存储设备上组织文件的方法
操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。

Linux号称万物皆文件,组成一个目录树结构。所有的文件都是从/根目录开始的。
实际上文件和目录在一些操作上还是有很大区别的。
文件末尾一般带有文件的格式,文件可以写入内容。
目录末尾一般不带有文件的格式,目录不写入内容,目录用来存储子目录或者文件。

2. Linux常见操作

1、history命令
查看历史执行命令

2、查看指定目录下内容ls

ls -a 查看所有文件 包括隐藏文件
ls -l =ll 查看文件详细信息 包括权限 类型 时间 大小等
ll -h 表示以人性化的显示内容
ll * *通配符表示任意字符 ?表示有且只有一个字符

3、切换工作目录

#如何查看自己当前的所在目录 pwd
cd 路径 注意自己写的是相对还是绝对的 还可以结合特殊符合使用
cd / 进入根目录
cd …/ 返回上级目录
cd ~ 进入当前用户目录

4、文件的创建与删除

touch 创建一个空文件 没有内容的文件
mkdir 创建文件夹
-p 父目录不存在的情况下 帮助创建
rm 删除文件
-f 强制删除 不给与提示
-r 递归删除 针对文件夹
-rf 杀伤力极大 问问自己在干什么
牢底坐穿眼:rm -rf /* 删除所有文件 千万别用

5、移动与复制

command not found
如果在linux中出现命令找不到错误,一般来说两种原因:

  1. 命令写错
  2. 命令不存在
    在确定没有写错的情况下 可以使用yum在线快速安装
    yum install -y tree
    cp 复制文件或者文件夹
    -r 递归 针对文件夹
    /a/b 表示复制的是文件夹b
    /a/b/* 表示复制的是文件夹b下的所有内容
    mv 移动文件或者文件夹
    mv 旧文件名 新文件名

6、查看文件内容的命令

#1、cat
一次查看所有的内容 适合小文件
#2、less
按space键翻下一页,按enter键翻下一行
按b向上翻一页
按q退出
#3、head
查看文档的前几行内容
-n 指定行数
#4、tail
- 数字 查看最后几行内容
-f -F 文件 实时查看文件的变化内容

tail -f等同于–follow=descriptor,根据文件描述符进行追踪,当文件改名或被删除,追踪停止。

tail -F等同于–follow=name --retry,根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪。

tailf等同于tail -f -n 10(tail -f或-F默认也是打印最后10行),与tail -f不同的是,如果文件不增长,它不会去访问磁盘文件,所以tailf特别适合那些便携机上跟踪日志文件,因为它减少了磁盘访问,可以省电。

五、vi|vim编辑器

0. 介绍

VI编辑器是linux平台上最强悍的文本编辑器。主要是以命令来驱动执行。
有三种工作模式:命令模式、输入模式、底线命令模式(末行模式)

  1. 直接使用vi打开文件进入的就是命令模式
  2. 编辑文本内容
    需要从命令模式按下i(当前位置开始输入)或o(下一行开始输入)进入输入模式
    按下esc回到命令模式
  3. : 字母(命令模式输入:进入末行模式, )
    通常用于文件的保存退出
    :q 退出
    :w 保存
    :wq 保存退出
    :wq! 强制保存退出

1. 打开新建、异常处理

vim 文件名

1、如果文件不存在 此时就是新建文件,进入命令模式,可以编辑保存等操作。
2、如果文件存在,就打开文件 进入命令模式,可以编辑保存等操作。

2. 常用命令操作(快速入门)

推荐记忆的命令(命令 作用 例子)

ls 查询目录下的文件
cd 切换工作目录 cd ~ 切换到根目录
mkdir 创建文件夹 mkdir abc 创建abc目录
touch 创建文件 touch 123.txt 创建一个123.txt文件
cp 复制 cp 文件或目录 目标目录 把文件或者目录复制到目标目录下,-r 递归 针对文件夹
mv 移动 mv 文件或目录 目标目录 把文件或者目录移动到目标目录下

注意: 移动和复制,本质上没有什么太大区别,只是移动时 会删除原文件,复制时不会, 移动文件夹时不需要使用-r,复制文件夹时必须使用-r

rm 文件或目录 删除

删除文件
-f 强制删除 不给与提示
-r 递归删除 针对文件夹
-rf 杀伤力极大 强制递归删除,不提示用户

读取文件的命令 (less more cat head tail)记住其一:

cat
一次查看所有的内容 适合小文件

(find locate) 记住其一:
find <指定目录> <指定条件> <指定动作>
默认是搜索当前目录下,所有文件 显示在屏幕上

find . -name “*.log” -ls 在当前目录查找以.log 结尾的文件, 并显示详细信息。

echo + 重定向
> 覆盖 类似文件的w
>> 追加 类似文件袋a
将前面命令成功的结果追加指定的文件中
&>> 终端命令出现异常将日志信息写入文件中
将前面命令失败的结果追加指定的文件中

echo 111 > 4.txt 将111写入4.txt

grep + 管道

ls | grep ^t 当前目录下,以t开头的文件或目录名

kill -9
chmod 权限管理
用户管理 useradd userdel passwd
用户组管理 groupadd groupdel
su, sudo

特级重要

tar 压缩(zcvf)和解压(zxvf)

参数含义:
c: 创建一个新的文件
V: 展示打包或者解包的过程
f: 指定文件名称
x: 解包
tar cvf 打包名.tar 被压缩的文件列表或目录名称
tar xvf 打包名.tar # 默认解包到当前目录中
tar xvf 打包名.tar -C 指定解包目录 # 解包到指定目录中
tar zcvf itheima.tar.gz a.txt b.txt
tar zcvf itheima.tgz a.txt b.txt
tar zxvf lrzsz-0.12.20.tar.gz -C aaa/ 注意C是大写的

如果对您有用的话, 请您动动小手, 点赞或者评论一下, 非常感谢您的支持!

更多推荐

Linux学习建议梳理(1)