Chapter 1. Linux 概述

Linux 是一种自由和开放源码的 Unix 操作系统, 是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多CPU的操作系统。只要遵循 GNU 通用公共许可证(GPL),任何个人和机构均可自由地使用Linux的所有底层源代码。

Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议,继承了 Unix 以网络为核心的设计思想,一个性能稳定的多用户网络操作系统。

1.2 Linux 发行版

一个 Linux 发行版 包括 Linux 内核,以及 整个软件安装到电脑上的一套安装工具,还有各种GNU软件,和其他的一些自由软件,在一些Linux发行版中可能会包含一些专有软件

基于的包管理工具 商业发行版 社区发行版
RPM(Redhat Package Manager) Red Hat Fedora / CentOS
DPKG (Debian Package) Ubuntu Debian

Linux 各发行版的特点:回答源自@王小龙的知乎回答

  • Ubuntu

    国内乃至全球热门的发行版。

    • 安装简单
    • Unity 3D 图形界面较华丽
    • 对一些专有驱动支持较好
    • 社区活跃,几乎遇到的问题均可获得答案
    • 版本更新快,基本半年一个版本
  • Debian

    基础发行版之一,而 Ubuntu 基于 Debian 的。

    • Free最符合开源精神的发行版,默认不包含任何专有驱动。
    • 不求新,求稳。软件包通常选择比较稳定的版本。
    • 系统开发维护完全由社区驱动。
    • APT 软件包管理
    • 图形化安装方式友好
  • Fedora

    常与 Ubuntu 比较的发行版。

    • YUM包管理(提供一些软件工具集合包,例如开发套件)
    • 新技术吸纳快
    • 基本半年一个版本
    • 图形化安装方式友好
    • 由红帽赞助
    • 官网提供多种桌面环境镜像
  • openSUSE

    • 基于企业级的SUSE Linux,再加上德国制造,非常稳定
    • 华丽的KDE桌面,业界称为“最华丽的Linux发行版”
    • 包管理(YaST)倾向于图形化管理,图形界面用户友好程度高。
  • Arch Linux

    • 轻量级且灵活,从选择键盘布局到分区硬盘到安装引导全部由你决定。
    • pacman 软件包管理工具
    • 滚动更新,实时更新。
    • 完备的WIKI,且中文化程度高。
  • CentOS

    • 相当稳定
    • 版本更新紧跟 RedHat Linux 的社区版
    • 适合作为服务器操作系统的使用

1.3 Linux 常用的快捷键

Tab :命令补全 或 文件补齐

ctrl + C :若在Linux底下输入了错误的指令或参数,希望将当前程序中断时,可键入该快捷键。

Ctrl + D :结束键盘输入(End Of File)

Shift + PageUp /PageDown :往 前/后 翻页

1.4 Linux 系统启动过程

1.5 VI / VIM

所有 Unix Like 系统 都会内建 vi 文书编辑器。而 Vim 是从 vi 发展出来的文本编辑器,它是一个程序开发工具而不是文本处理软件。

vi/vim 共有 三种模式:

  • 指令模式(Command mode)

    用户刚启动vi/Vim,即$ vi 文件名,便进入命令模式,注意,此模式下敲击键盘动作会作为Vim识别为命令,而非输入字符

    常用命令(包含但不限于)有:

    • i 切换到编辑模式,以输入字符。注意,iI不同,i为 从目前光标所在处输入
    • x 删除当前光标所在处的字符。
    • : 切换到指令列模式,以在最底一行输入命令。
    • r 进入取代模式(Replace mode),注意,r代表只会取代光标所在的那一个字符一次。

    搜索替换:

    • /字符串:向光标之下寻找一个名称为 word 的字符串。
    • ?字符串:向光标之上寻找一个字符串名称为 word 的字符串。
    • n:重复前一个搜寻的动作
  • 编辑模式(Insert mode)

    该模式下,可以观察到左下角状态栏有-INSERT-字符。

    • BACK SPACE,退格键,删除光标前一个字符
    • DEL,删除键,删除光标后一个字符
    • ESC,退出编辑模式,切换到指令模式
  • 指令列模式(Bottom-line mode)

    在指令模式下按下:即可进入指令列模式,如下有:

    • :w:写入磁盘
    • :w [文件名]:将编辑的数据存储成另一文件(类似另存新档)
    • :w!:当文件为只读时,强制写入磁盘。到底能不能写入,与用户对该文件的权限有关
    • :q离开
    • :q!:强制离开
    • :wq写入磁盘后离开
    • :wq!:强制写入磁盘后离开

    ! 往往具有“强制”含义。

1.6 apt 命令

apt(Advanced Packaging Tool)命令,提供了查找、安装、升级、删除某一个、一组甚至全部软件包的命令。

注意,apt 命令的执行,往往需要超级管理员权限(root)

1.6.1 apt 语法

$ apt [options] [command] [package ...]
  • [options]:可选,包含 -h(帮助)、-y(当安装过程提示选择全部为"yes")-q(不显示安装的过程)
  • [command]:要进行的操作。
  • [package]:安装的包名。

1.6.2 apt 常用命令

  • $sudo apt update:会访问源列表里的每个网址,并读取软件列表,然后保存在本地电脑中。软件包管理器可看到的软件列表,正是通过该命令更新的。

  • $sudo apt upgrade :会将本地已安装的软件,与刚下载的软件列表里对应软件进行对比,提示你哪些软件可升级、新安装了哪些软件包、要卸载哪些软件包。

  • $sudo apt install 软件包1名称 软件包名称 ... :安装指定的软件。如下举例:

    $ sudo apt install qtcreator
  • $sudo apt remove 软件包名称:卸载指定的软件包

Linux 学习笔记02丨Linux 概述、常用快捷键、apt命令的更多相关文章

  1. Linux学习笔记(一)----Ubuntu下的apt命令

    一.原理与目录 先介绍几个和apt-get相关的目录: /var/lib/dpkg/available文件的内容是软件包的描述信息, 该软件包括当前系统所使用的 Debian 安装源中的所有软件包,其 ...

  2. Linux 学习笔记04丨Linux的用户和用户组管理

    Chapter 3. 用户和用户组管理 由于Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以该账号身份进入系统. 3.0 用户与 ...

  3. Linux 学习笔记03丨Linux文件系统、文件基本属性、目录处理及文件查看

    Chapter 2. 文件系统 2.1 Linux 系统目录结构 命令窗口下输入命令: $ ls /,能够看到根目录下的全部目录及文件 树状目录结构为: 最顶级的目录: / :根目录 / 是根目录,~ ...

  4. 【linux学习笔记之一】linux系统目录结构以及常用系统命令

    序 ???这破笔记也要序?? 昨天开始学linux,做好笔记以备日后翻阅 Linux系统目录结构图 bin  --主要用于存放二进制文件(如:命令文件) boot--引导目录 dev  --设备目录 ...

  5. linux学习笔记3:linux的网络配置,rpm包,shell以及samba服务器的使用和安装

    1.linux下的shell<linux命令.编辑器和shell编程> (1)shell种类有很多,常用的有三种,在linux可以通过ls -l /bin/*sh 来显示所有已安装的she ...

  6. Linux学习笔记之查看Linux版本信息

    0x00 概述 这里所谓的Linux版本信息,包括Linux内核版本信息和Linux系统版本信息. 0x01 查看Linux内核版本信息 方法1:登陆Linux,在终端输入 cat /proc/ver ...

  7. Linux学习笔记之(1)~Linux有趣的历史概览

    献给知道mono,了解Jexus,对.net混搭技术感兴趣的朋友. 1965年,Bell.MIT和GE公司发起Multics计划,目标是实现一个操作系统可以让大型主机实现连接三百个终端的目标.(那个时 ...

  8. linux学习笔记4:linux的任务调度,进程管理,mysql的安装和使用,ssh工具的使用,linux网络编程

    1.设置任务调度命令crontab 任务调度是指系统在某个时间执行的特定的命令或程序.任务调度分为:1)系统工作:有些重要的工作必须周而复始的执行,如病毒扫描.2)个别用户工作:个别用户可能希望执行某 ...

  9. Linux学习笔记(一):常用命令

    经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...

随机推荐

  1. IDEA上运行Flink任务

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  2. Mybatis---01Mybatis动态代理过程分析

    1.通过调试,session调用的getMapper是其实现类DefaultSQLSession中的 //1.读取配置文件 InputStream in = Resources.getResource ...

  3. Linux 网络编程的5种IO模型:异步IO模型

    Linux 网络编程的5种IO模型:异步IO模型 资料已经整理好,但是还有未竟之业:复习多路复用epoll 阅读例程, 异步IO 函数实现 背景 上一讲< Linux 网络编程的5种IO模型:信 ...

  4. LWJGL3的内存管理,第三篇,剩下的两种策略

    LWJGL3的内存管理,第三篇,剩下的两种策略 上一篇讨论的基于 MemoryStack 类的栈上分配方式,是效率最高的,但是有些情况下无法使用.比如需要分配的内存较大,又或许生命周期较长.这时候就可 ...

  5. 记录电子竞技游戏jesp中的传输过程公式

    1.json数据转换成字典 dict1 = json.load(load_f1) dict2 = json.load(load_f2) 2.将两个字典按key排好序,然后使用zip()函数将两个字典对 ...

  6. 【新阁教育】穷学上位机系列——搭建STEP7仿真环境

    经常有学员问我,学习上位机要不要买PLC硬件? 我一般的回答是:富则自行购买,穷则搭建仿真. PLC硬件,对于学习上位机来说,是锦上添花的事,经济条件允许,有则更好,条件不允许,我们也可以通过搭建仿真 ...

  7. (三)URI、URL和URN/GET与POST的区别

    (一)URI.URL.URN HTTP使用统一资源标识符(Uniform Resource Identifiers,URI)来传输数据和建立连接. URL是一种特殊类型的URI,包含了用于查找某个资源 ...

  8. MeterSphere开发者手册

    什么是 MeterSphere MeterSphere 是一站式的开源企业级持续测试平台, 涵盖测试跟踪.接口测试.性能测试. 团队协作等功能,兼容 JMeter 等开源标准,有效助力开发和测试团队充 ...

  9. 一次打包引发的思考,原来maven还能这么玩?

    持续原创输出,点击上方蓝字关注我 目录 前言 依赖关系 你会怎么做? 必知的几个参数 总结 前言 昨天有一个读者找我的交流工作心得,偶然间提到一个有趣的问题,如下: 「大致的意思」:公司最近在整多模块 ...

  10. Pandas_工资集处理

    import numpy as np import pandas as pd from pandas import Series,DataFrame # 1--读取数据文件 file_obj=open ...