1-1Linux基础(1-3)


3833字数

01课程简介

让大家对Ubuntu的使用从很陌生灵活操作

  • 必需下载VMware,Ubuntu。
  • 可选择下载tree命令,看我主页,教你下载tree必行术

  • 以下是励志小故事

$python

1.01 ** 365
37.78343433288728

1.02 ** 365
1377.4082919660

比你努力一点的人,其实已经甩你很远。

1.01 ** 3 * 0.99 **2
1.0097980101000001

1.01 ** 3 * 0.99 ** 2 < 1.01
三天打鱼,两天晒网,终将一无所获


02操作系统简介

1)什么是操作系统(Operation System, OS)
  • 没有安装操作系统的计算机,通常被称为裸机
  • 如果想在裸机上运行自己所编写的程序,就必须用机器语言 0101010001 书写程序
  • 如果安装了操作系统,就可以在操作系统上安装支持的高级语言环境,用高级语言开发程序

操作系统的作用:

1.直接操作硬件
2.把操作硬件的代码封装成一个又一个系统调用,供程序员通过系统调用间接操作计算机的硬件

2)不同领域的主流操作系统
  • 桌面操作系统
    • Windows 系列(应用软件多,用户群体大,安全性稳定性不好)
    • macOS(适合于开发人员,安全性稳定性好)
    • Linux(应用软件少,通常在服务器嵌入式操作系统使用)
  • 服务器操作系统
    • Linux(安全,稳定,免费,占有率高)
    • Windows Server(付费,占有率低)
  • 嵌入式操作系统
    -Linux
  • 移动设备操作系统
    • iOS
    • Android(基于 Linux)
3)虚拟机(Virtual Machine)简介

虚拟机是通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,可以在学习陌生的操作系统中,在不破坏已有操作系统基础上,安装一套全新的操作系统,不会对已有的操作系统有任何破坏。

VMWare -> ubuntu

4)操作系统的发展简史

1.1 Unix
1965年前,电脑只在军事和学院研究使用,当时大型主机最多提供30台终端(即30个键盘、显示器),连接一台电脑。
为解决数量不够用的问题,贝尔实验室加入了麻省理工学院以及通用电气合作的计划–建立一套多使用者(multi-user),多任务(multi-processor),多层次(multi-level)的MULTICS操作系统。由支持30个终端变成支持300个终端。

而 Ken Thompson 在实验室无聊时为了让电脑能运行星际旅行(Space Travel)游戏,用1个月的时间,使用汇编写出了 Unix 操作系统的原型。

Ken Thompson,以 BCPL 语言为基础,设计出很简单又很接近硬件的的B语言(取BDPL的首字母),并用B语言写了第一个Unix操作系统

而Dennis M.Ritchie 为了早点玩到星际旅行游戏,加入了Thompson到开发项目,合作开发Unix,他的主要工作是改造B语言,因为B语言跨平台性较差,最终他在B语言的基础上设计出新的高级语言–C语言(取BCPL的第二个字母)。

1973年初,C语言的主体完成,Thompson 和 Ritchie 迫不及待地用它重写了现在大名鼎鼎的 Unix 操作系统。

1.2 Minix
Andrew S. Tanenbaum 教授为了能在课堂上教授学生操作系统的细节,决定在不使用任何AT and T 的源代码前提下,自行开发与Unix兼容的操作系统–Minix(Mini-Unix之意)以避免版权上的纠纷。

1.3 Linux
1991年,Linus 在就读赫尔辛基大学期间,对Unix产生浓厚兴趣,尝试在Minix上做一些开发工作。
不过Minix 只是教学使用,因此功能不强,linus经常要用他的终端仿真器(Terminal Emulator)去访问大学主机上的新闻组和邮件,为了方便读取和下载文件,他自行编写了磁盘启动程序和文件系统,这些后来成为Linux第一个内核的雏形。

Linus用GNU 的bash 当做开发环境,gcc 当做编译工具,编写了Linux内核,一开始Linux并不能兼容Unix。

  • 即Unix 上跑的程序不能在Linux 上跑,即应用程序和内核接口不一致。
  • 一开始Linux只适用于386,后来经过全世界的网友的帮助,最终能兼容多种硬件。
5)Linux的内核版和发行版

2.1 Linux 内核版本

  • 内核(kernel)是系统的核心,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸设备与应用程序间的抽象层。
    2.2 Linux发行版本
    Linux发行版(也被叫GNU\Linux 发行版)通常包含了桌面环境、办公套件、媒体播放器、数据库等应用软件。
  • Ubuntu
  • Redhat
  • Fedora
  • openSUSE
  • Linux Mint
  • Debian
  • Manjaro
  • Mageia
  • CentOS
  • Arch
6)Linux系统下的文件目录结构

2.1 Windows 下的文件系统(单用户操作系统)
有一个个驱动器盘符,每个驱动器都有自己根目录结构,这样形成了多个树并列的情形。

2.2 Linux 下的文件系统(多用户操作系统)

  • 在Linux,我们没有驱动器盘符,只有一个盘,/根目录是最顶级目录,/home家目录。
  • 每个用户在各自的家玩耍,不干扰其他用户。
7)Ubuntu系统目录结构演示和简介
  • /:根目录
  • /bin:执行二进制文件的目录,常用命令如ls、tar、mv、cat等
  • /Boot:放置linux系统启动时用到的一些文件,如linux的内核文件:/boot/vmlinuz,系统引导管理器:/boot/grub
  • /dev:存放linux系统下的设备文件,访问该目录下的某个文件,相当于访问某个设备,常用的是挂载光驱mount /dev/cdrom/mnt
    -/etc:系统配置文件存放的目录,不建议在此文件存放可执行文件。重要配置文件有:inittab,fstab,init.d,X11,sysconfig,xinetd.d
  • /home:用户家目录,~ 表示当前用户家目录,~edu表示用户edu的家目录。
8)Ubuntu图形界面基本使用
  • Ubuntu任务栏在左侧。
  • 打开图标,图标会高亮
  • 长按图标可拖拽移动图标。
  • 右击图标可删除图标,或设置成默认图标。

03Linux命令简介

1)明确学习目标

为什么学习Linux终端命令?

  • 一开始,linux刚诞生,并没有图形界面,所有操作都依靠终端命令,如磁盘操作文件存取目录操作进程管理文件权限设定等。
  • 在如今IT市场,若想要做服务器的维护管理工作,绝大多数都会在家安装SSH客户端远程登录到服务器进行管理,无图形界面,需通过命令完成。
  • Linux终端命令大概有200多个,而常用命令只有10多个而已。
  • 学习终端命令并不需要死记硬背,用得多,自然会记住。
  • 不要尝试一次性学会所有命令,有些命令并不常用,临时遇到,临时Google就可以。
2)放大缩小终端窗口字体

ctrl+ shift + = 放大终端
ctrl + - 缩小终端

3)明确6个常见终端命令的操作效果
序号命令对应英文作用
01lslist查看当前文件下的内容
02pwdprint work directory查看当前所在文件夹
03cd[目录名]change directory切换文件夹
04touch[文件名]touch如果文件不存在,新建文件
05mkdir[目录名]make directory创建目录
06rm[文件名]remove删除指定的文件名
07clearclear清屏
4)6个常见终端命令简单演练

使用Ubuntu打开terminal, 演练命令:
ls、pwd、cd、touch、mkdir [ ]、rm [ ]、clear。

5)终端命令格式
  • command [-options] [parameter]

    • command:命令名,相应功能的英文单词或单词缩写
    • [-options] : 选项,可用来对命令进行控制,也可以省略
    • parameter :传给命令的参数,可以是零个一个 或者 多个
  • [ ] 代表可选

    • 如 ls,pwd,clear 没有[ ],都可以使用命令。
    • touch + [文件名], cd [目录名],mkdir [目录名],rm [文件名],需加选项来使用命令。
6)查阅终端命令帮助信息(速查)

有两种方式(先学习常用命令以及常用选项的使用即可,工作中如果遇到问题可以借助网络搜索):

  • help
    command --help
    (说明:显示command命令的简要的帮助信息)
  • man (是 manual(手册) 的缩写)
    man command
    (说明:包含绝大多数命令、函数的详细使用说明)

打开Ubuntu
尝试 mkdir --helpman mkdir(满屏)

  • q :退出
  • 空格键 :显示手册页下一屏
  • Enter键 : 滚动手册的下一行
  • b(back的缩写):回滚一屏
  • f(forward 的缩写):前滚一屏

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值