Linux入门学习
什么是操作系统
计算机是一台机器,它按照用户的要求接收信息、存储数据、处理数据,然后再将处理结果输出(文字、图片、音频、视频等)。计算机由硬件和软件组成:
硬件是计算机赖以工作的实体,包括显示器、键盘、鼠标、硬盘、CPU、主板等
软件会按照用户的要求协调整台计算机的工作,比如Windows、Linux、Mac OS、Android等操作系统,以及Office、QQ、迅雷、微信等应用程序。
**操作系统(Operating System, OS)是软件的一部分,它是硬件基础上的第一层软件,是硬件和其它软件沟通的桥梁(或者说接口、中间人、中介等)**。
操作系统会控制其他程序运行,管理系统资源,提供最基本的计算功能,如管理及配置内存、决定系统资源供需的优先次序等,同时还提供一些基本的服务程序,例如:文件系统、设备驱动、用户界面、系统服务等

操作系统使得应用程序无法直接与硬件打交道,而是必须经由操作系统的内核,协调多个程序运行避免恶意程序破坏其他进程独占资源,保证了多任务平稳的运行
操作系统向外提供系统调用,然后系统调用被封装成库向外提供库调用,程序员只需要根据库的API接口进行编程,不用关心底层硬件的不同,便于程序的移植。
Linux系统发展史
Linux在设计之初,是一个基于POSIX的多用户、多任务并且支持多线程和多CPU的操作系统,它是由世界各地成千上万的程序员设计和开发实现。
当初开发Linux系统的目的就是建立不受任何商业化软件版权制约的、全世界都能自由使用的类Unix操作系统兼容产品。
什么是Unix
Unix是一种计算机操作系统,具有多任务、多用户的特征,是商业化的,和硬件配套使用 IBM—AIX、HP—HP-UX、SUN—Solaris

Linux系统主要特性
- 基本思想:一切皆文件,每个软件都有特定用途
- 兼容POSIX1.0标准: 可移植操作系统接口,可在其他兼容POSIX标准的系统上执行程序
- 多用户多任务:各个用户对于自己的文件有自己的权力,多个程序同时并独立的运行
- 支持多种平台:可以运行在多种硬件平台上,比如x86、680x0、SPARC、Alpha等处理器的平台
- 良好的界面:同时具有字符界面和图形界面
- 完全免费
Linux系统版本
内核版
Linux内核版本指的就是Linux的核心版本,在内核官方网站www.kernel.org发布。**内核** 指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统。Linux内核的主要模块(或组件)分以下几个部分:存储管理、CPU和进程管理、文件系统、设备管理和驱动、网络通信,以及系统的初始化(引导)、系统调用等。
发行版本
预先整合好的Linux系统,一般使用者不需要重新编译,直接安装后进行小幅度更改设置就可以使用
Redhat
—— 最著名的Linux版本,企业级CentOS
—— 要求高稳定性服务器使用Ubuntu
—— 以桌面应用为主,多媒体SUSE
—— 连接数据库最稳定
Linux的特点
- 由目的单一的小程序组成;
- 组合小程序完成复杂任务一切皆文件
- 尽量避免捕获用户接口
- 配置文件保存为纯文本格式
- Linux的shell,是人机接口。Linux的shell 包括GUI和CLI两种类型。
- GUI指图形界面,与windows类似。比较常见的有gnome、KDE和xface等
- CLI是命令行界面。比较常见的有bash.csh、zsh、 ksh 和tcsh等,我们通常使用用bash。
Linux命令行基础
下面的命令行是基于 CentOS7 的版本
登录Linux
Liunx命令行登录时是没有回显的,我们只需要输入完密码回车结束就好
Linux命令提示符有两种:#
和 $
$
号是使用普通用户登录后的提示符#
号是超级用户root登录后的提示符
使用命令行
注意Linux命令是严格区分大小写的
Ctrl+C
终止当前输入和操作TAB
补全当前的命令,有的系统按一下就可以进行自动补齐,有点需要按两下Ctrl+A
使光标移到最前面Ctrl+E
使光标移到最后Ctrl+D
退出当前终端Ctrl+L
清屏Ctrl+Z
暂停当前进程,和Ctrl+C不同,Ctrl+Z暂停后可以恢复进程ifconfig
查看当前接口状态,默认为自动获取IP,默认网口为ens33ss -lnt
查看当前开放的tcp端口
Linux命令的语法

有时命令会带有一个或者多个选项。
通常选项由单个字母构成,并在字母前加一个连接符-
,有时因为选项太多,我们可以使用更简单的写法如下
1 | ls -a -l -t和ls -alt是一种含义 |
有些选项也可以是一个连续的单词,我们称为长选项,使用两个连接符加一个完整单词如ls --help
–help是多数命令的帮肋选历,可以查看命令的基本使用方式法,同时,多数命令在选项之后可以接参数,参数通常是指文件名、目录、用户名、设备。其实可以理解为命令要执行操作的对象。
总结一下,选项是告诉命令怎样执行,参数告诉命令对谁执行
Shell History
我们可以通过 history
命令来查看以前执行过的命令

!数字 执行history中对应编号的命令
!! 执行上一条命令
!?is? 执行history中包含is
的命令
还可以通过上下键来选择历史命令