第一讲:linux 系统介绍

Linux C++ 开发 专栏收录该内容
1 篇文章 0 订阅

1、概念问题

操作系统:是最基本、最重要的系统软件,用于管理系统资源,控制程序执行,改善人机界面,提供各种服务,合理组织计算机工作流程,为用户使用计算机提供良好的运行环境。

UNIX:是一个强大的多用户、多任务操作系统,支持多种处理器架构。


2、Linux 操作系统的特性

windows 操作系统的主要特性有统一的图形窗口界面和操作方法、易用性和兼容性、支持多任务多窗口、先进的内存管理、数据共享、拥有丰富的应用程序、内置网络和通信功能、支持多媒体技术等。

Linux的主要特性有:

  • 设备独立性:操作系统把所有外部设备同一当作文件来看代,只要安装它们的驱动程序,任何用户都可以像使用文件一样操作、使用这些设备。(Linux系统中一切皆为文件)
  • 可以自由、免费使用;开放性;性能好,功能完善;可以进行内核定制;支持多种硬件平台;完善的网络和Internet支持;可靠的系统安全;良好的可移植性。

3、分层设计的 Linux 体系结构

windows 系列操作系统采用微内核体系结构,模块化设计,将对象分为用户模式层和内核模式层用户模式层由一组组件(子系统)构成,将与内核模式组件有关的必要信息与奇最终用户和应用程序膈应开来。内核模式层有权访问系统数据和硬件,能直接访问内存,并再被保护的内存区域中执行。

Linux 操作系统是采用单内核模式的操作系统,内核代码结构紧凑,执行速度快。Linux 操作系统的主要部分是内核,可实现的功能有进程管理内存管理文件系统设备驱动网络系统等功能,为内核外的所有程序提供运行环境。
在这里插入图片描述
在这里插入图片描述


4、Linux 磁盘分区

磁盘在系统中使用都必须先进行分区。

Windows 系统使用盘符(驱动器标识符)来标明分区,如 C盘、D盘、E盘 等(A 和 B 表示软驱),用户可以通过相应的驱动器字母来访问分区。

Linux 系统使用单一的目录树结构,整个系统只有一个根目录,各个分区以挂载到某个目录的形式成为根目录的一部分。Linux 使用设备名称+分区编号来标明分区的。SCSI 磁盘、SATA 磁盘(串口磁盘)均可表示为 “sd”,并且 “sd” 之后使用的小写字母表示磁盘标号磁盘编号之后的是分区编号,使用阿拉伯数字表示(主分区或扩展分区的分区编号为 1~4,逻辑分区的分区编号从 5 开始)。

例如:第一块 SCSI 或 SATA 磁盘被命名为 sda,第二块为 sdb,第一块磁盘的第一个主分区表示为 sda1,第二个主分区表示为 sda2。IDE 磁盘使用 “hd” 表示,表示方法同 SCSI 磁盘。

每个操作系统都需要一个主分区来引导,该主分区存放引导整个系统所需的程序文件操作系统的引导程序必须安装在用于引导的主分区,而其主体部分可以安装在其他主分区或扩展分区中

安装 Ubuntu 需要创建两个分区:根分区(/)Swap(交换)分区

根分区:用于存储大部分系统文件和用户稳健,应保证其存储空间能够容纳各个 Linux 组件。

Swap 分区:提供虚拟内存空间,其大小通常是物理内存的两倍左右。

引导分区:用于引导系统,包含os内核和启动过程中所要用到的文件。

5、常用 linux 指令

1、pwd–print current working directory

  • 作用:打印当前终端所在的目录
  • 用法:pwd

2、ls–list

作用:列出当前工作目录下的所有文件/文件夹的名称

  • 用法1:ls
  • 含义:列出当前工作目录下的文件/文件夹的名称

  • 用法2:ls [路径]
  • 含义:列出指定路径下的所有文件/文件夹的名称
    • 绝对路径:相对根目录的路径;
    • 相对路径:相对当前目录的路径;
# ls 相对路径
ls ./		# 表示当前目录下
ls ../		# 表示上一级目录
# ls 绝对路径
ls /home

在这里插入图片描述


  • 用法3:ls 选项
  • 含义:在列出指定路径下的文件/文件夹的名称,并以指定的格式进行显示。
# ls 选项 路径
ls -lsh /home
# 选项解释:
	-l:表示list,表示以详细列表的形式进行展示
	-a:表示显示所有的文件/文件夹(包含了隐藏文件/文件夹)
	-h:表示以可读性较高的形式显示
# ls -l 中 "-"表示改行对应的文档类型为文件,"d"表示文档类型为文件夹
# 在 linux 中的隐藏文档一般都是以'.'开头的

在这里插入图片描述

3、cd–change directory

  • 作用:切换当前的工作目录
  • 用法1:cd;cd -
# 以下两条命令等价,表示直接进入当前用户的 home 目录下【很常用】
cd
cd ~
  • 用法2:cd [相对路径]
# 进入上级目录下
cd ..
# 进入上级目录中的 local 目录下
cd ../local
  • 用法3:cd [绝对路径]
# 进入到/usr/local目录下
cd /usr/local

4、mkdir–make directories

  • 作用:创建目录
  • 用法1:mkdir 路径
# 在当前路径下创建出目录 myfolder
mkdir myfolder
  • 用法2:mkdir -p 路径
  • 含义:一次性创建多层不存在的目录
# 创建 a/b/c 目录
mkdir -p a/b/c
  • 用法3:mkdir 路径1 路径2
  • 含义:一次性创建多个目录
# 在当前目录下分别创建 a、b、c 三个文件夹
mkdir a b c

5、touch–change file timestamps

  • 作用:创建新文件
# 为什么创建文件是 touch 呢?
# 1、touch 的作用本来不是创建文件,而是将指定文件的修改时间设置为当前时间。就是假装"碰"(touch)了一下,假装文件被"修改"了,于是文件的修改时间就是被设置为当前时间。
# 2、这就带来一个副作用,就是当 touch 一个不存在的文件的时候,它会创建这个文件。然后,由于 touch 已经可以完成创建文件的功能了,就不再需要一个单独的 create 了。
  • 用法1:touch [路径]
# 在当前目录下创建 linux.txt 文件
touch linux.txt
# 在上级目录下创建 linux 文件
touch ../linux
# 在/home/yfn/目录下创建myfile文件
touch /home/yfn/myfile

在这里插入图片描述

6、rm–remove files or directories

  • 作用:删除文件/目录
  • 用法1:rm [选项] 需要移除的文件路径
# 删除当前路径下的 myfile 文件
rm myfile
# 删除/usr路径下的 file01 文件
rm /usr/file01

  • 用法2:rm [选项] 需要移除的目录
# 删除当前路径下的文件夹 a
rm -rf a
# 删除/usr路径下的文件夹 a
rm -rf /usr/a

7、cp–copy files and directories

  • 作用:复制文件/文件夹到指定的位置
  • 用法1cp [被复制的文件路径] [文件被复制到的路径]
# cp 命令来复制一个文件
cp /home/yfn/myfile ./
  • 用法2:cp -r [被复制的文件夹路径] [文件夹被复制到的路径]
  • 含义:-r 表示递归复制(就是用来递归复制文件夹下的所有文件的),复制文件夹的时候需要加 -r
# 复制 /home/yfn/abc 文件夹到根目录/下
cp -r /home/yfn/abc /

在这里插入图片描述

8、mv–move(rename) files

  • 作用:移动文件到新的位置,或者重命名文件
  • 用法:mv 需要移动的文件路径
# 移动当前目录下的myfile文件到根目录/下
mv myfile /

# 重命名文件,将 hello world.cpp 重命名为 1.cpp
mv 'hello world.cpp' '1.cpp'

9、man–an interface to the system reference manuals

  • 作用:包含了 linux 中全部命令手册
  • 用法:man [命令]
  • 含义:查看命令使用手册,按 q 退出
# 查看 ls 命令的手册
man ls
# 查看 cd 命令的手册
man cd
# 查看 man 命令的手册
man man

10、reboot–reboot the machine

  • 作用:重启 linux 系统
  • 用法:reboot
# 立即重启
reboot

11、shutdown–power-of the machine

  • 作用:关机
  • 用法:shutdown -h [时间]
# 立即关机
shutdown -h now

6、文件编辑

  • Vim [file]
    • 所有的 linux 系统都会内建 Vi/Vim 编辑器,其他的编辑器则不一定会存在
    • Vim 是所有 Unix 及 Linux 系统下的标准的编辑器
    • Vim 具有程序开发的能力,也可以用来对文件进行简单的编辑

在这里插入图片描述

  • 2
    点赞
  • 1
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2020 CSDN 皮肤主题: 撸撸猫 设计师:马嘣嘣 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值