【Linux学习】(2)OS的简单了解|Linux的基本指令操作

前言

本文将先简单了解什么是操作系统,再讲解一些Linux的基本指令。

一、操作系统的简单了解

1、什么是操作系统(Operating System,简称OS)?

  • OS是一款做软硬件管理的软件。
  • 软硬件的体系结构图:在这里插入图片描述
    • 硬件:软硬件层次中处与最低层的就是硬件,硬件眼睛能看到,手能摸到,是客观存在的,例如:CPU、内存……
    • 设备驱动:设备驱动处于OS和硬件之间,相当于硬件的接口,操作系统只能通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正确工作。因此,驱动程序被比作“硬件和系统之间的桥梁”。(早期计算机都是通过硬件电路直接控制的,所以当时只有硬件,需要用户手动控制硬件。随着发展,硬件功能越来越完善,所以需要一款软件对硬件做管理,管理的软件叫做OS,但是硬件变得复杂了,所以每一种硬件要被正确访问,就在OS和硬件之间又提供了设备驱动)
    • 应用软件:在应用软件处与操作系统之上,我们需要有各种不同的应用软件,来满足用户不同的应用场景(下三层为我们提供了一套软硬件服务,可是用户的需求并不是直接用OS,所以在OS之上又提供了各种应用软件)

2、为什么要有操作系统?

  • 一个好的操作系统的衡量指标有:稳定、快速、安全……
  • 为什么要有操作系统:
    • 从操作系统的核心工作来看:通过对下管理好软硬件资源的手段,达到对上提供良好的(稳定、快速、安全) 操作/使用环境

3、小结

  • 现在OS我们只需要记住两个点:管理贯穿
  • 管理: OS在软硬件体系结构中处于一种承上启下的作用,他主要的核心工作是对下管理好底层的软硬件,对上提供一个良好的操作环境。
  • 贯穿: 我们在计算机上的所有行为都会转换成硬件行为(例如:printf——显示器打印;玩游戏——向网络发送数据等)——》我们所有的软件行为,全部都要自顶向下贯穿计算机的软硬件结构——》几乎我们所有的软件行为,都和OS直接或间接相关。

二、Linux下的基本指令

1、Linux操作的特点

  • Linux操作的特点:以纯命令行为主,但Linux也有图形化界面(大多为专业人员使用,因为一般企业的Linux服务器都没有图形化界面)
  • Windows操作的特点:以图形化界面为主,但也有命令行(大多为普通用户使用,在乎体验、好用)
  • 无论是图形化、还是指令,其本质都是一样的。但是指令更贴近我们的OS。
  • 思考:先有指令,还是先有图形化?
    • 先有指令,再有图形化,因为先有键盘(因为计算机首先需要解决输入输出的问题 ),后有鼠标(有了图形化才有了鼠标),即硬件产生的先后顺序决定了操作的先后顺序。

2、先整体了解几条基本指令

  • ls:显示当前目录下的所有子目录与文件
  • pwd:显示用户当前所在目录
  • mkdir dirname:在当前目录下创建一个名为“dirname”的目录
  • touch 文件名:新建一个不存在的文件
  • cd 目录:改变工作目录,将当前工作目录改变到指定的目录下


tip:

  1. Linux中文件被分为两种:①在Linux中文件夹通常叫做目录;②普通文件(例如:.c / .txt等)
  2. 新建目录(文件),指令和目录(文件)之间必须要有空格(也可以有多个空格,但建议一个空格即可)
  3. 目录它指的是文件系统中用来组织和存放文件的位置

如下Linux指令与Windows界面操作对比图:

在这里插入图片描述

3、ls指令

  • 语法: ls [选项] [目录或文件]
  • 功能:
    • 对于目录,该命令列出该目录下的所有子目录与文件。
    • 对于文件,将列出文件名以及其他信息
  • 常用选项:
    • -l 列出文件的详细信息
    • -a 列出目录下的所有文件,包括 . 开头的隐含文件
    • -F 在每一个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOS;“=”表示套接字(sockets)。(目录类型识别)
    • -d 将目录像文件一样显示,而不是显示其下的文件(即只显示该目录,不显示其内部的文件)。如:ls -d 指定目录
    • -i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
    • -k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
    • -n 用数字的 UID,GID 代替名称。 (介绍 UID, GID)
    • -r 对目录反向排序。
    • -t 以时间排序。
    • -s 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
    • -R 列出所有子目录下的文件。(递归)
    • -1 一行只输出一个文件。


tip:

  1. 指令是可以携带“选项”的
  2. “选项”可以让同一个指令,表现不同的行为,即可将其理解为指令的子功能
  3. 可以通过使用“选项”,让指令展现它不同的子功能
  • 示例:
  • ls:显示当前目录下的所有子目录与文件
    在这里插入图片描述
  • ls -d :将目录像文件一样显示,而不是显示其下的文件(即只显示该目录,不显示其内部的文件)。如:ls -d 指定目录
    在这里插入图片描述
  • ls -l:列出文件的详细信息(即显示更多的文件属性)
    在这里插入图片描述
    在这里插入图片描述
  • ls -a:列出目录下的所有文件,包括 . 开头的隐含文件
    在这里插入图片描述
  1. 在Linux中,以 . 开头的文件,我们称之为隐藏文件!
  2. Linux任何一个目录下面都有两个隐藏文件 . 和 . . ,如下图:在这里插入图片描述
  3. . . :表示当前路径的上级路径,它的意义是回退到上级目录。在这里插入图片描述
  4. . :表示当前路径,它的意义是帮用户定位当前目录下的一个文件(例如:运行可执行文件a.out——》./a.out)
  • ls -F: 在每一个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOS;“=”表示套接字(sockets)。(目录类型识别)
    在这里插入图片描述
  • 选项可以组合在一起使用,特殊ls -l 等价与 ll
    在这里插入图片描述
  • 小结:ls所有携带的“选项”,都是帮助我们对文件属性去查看的。
  • 重新理解文件:
  1. 因为文件的属性也是数据,是数据就要存储,所以文件=文件内容+文件属性
  2. 所以文件只有两种操作:
    • 对文件内容的操作
    • 对文件属性的操作

4、pwd指令

  • 语法: pwd
  • 功能: 显示用户当前所在的目录
  • 常用选项:
  • 示例:在这里插入图片描述
  • 路径分隔符:
  1. 路径分隔符:
    • Linux的路径分隔符:/(斜杆)
    • Windows的路径分隔符:\(反斜杠)
  2. Linux的根目录为“/”(回退到“/”就不能回退了)
  • 小结:Linux不能直接看到用户当前所在的目录,需要pwd指令才能看到用户当前所在目录

5、whoami指令

  • 语法: whoami
  • 功能: 查看当前登录用户是谁
  • 示例:在这里插入图片描述
  • 家目录:
  • Linux中的用户分为两类:超级用户root(只有一个)与其它(普通用户,可以有多个)
  • 家目录:
    • /root:root用户的家目录
    • /home/xxx:xxx普通用户的家目录
  • Centos系统中,所有的普通用户,用户账号都会统一放在/home
  • 支持多用户登录的OS,叫做多用户OS,典型的多用户OS有Linux、Windows
  • root账号下所有命令行的前缀是#,普通账号下所有命令行的前缀是$

6、cd指令

  • 语法: cd 目录
  • 功能: 改变工作目录,将当前工作目录改变到指定的目录下
  • cd指令其它几个常用的用法:
    • cd . . :回退到上级目录(. . 表示当前路径的上级路径)
    • cd 绝对路径:使用绝对路径,进入指定目录
    • cd 相对路径:使用相对路径,进入指定目录
    • cd ~:让对应的用户,进入到自己所在的家目录( ~表示特定用户的家目录)
    • cd -:切换到我上一次所在的目录(-表示我上一次所在路径)
  • 目录结构&绝对路径&相对路径:

在这里插入图片描述

  1. 一个目录,里面可以再放目录或者普通文件
  2. Linux的目录结构整体是一棵多叉树,它的叶子结点,一定是空目录或者非目录文件,路上结点一定是一个非空目录
  3. 所以我们所有的对文件或者目录的增删改查,本质都是对这棵多叉树的增删改查
  4. 所以我们定位一个文件,通常用路径来进行定位——》因为路径定位具有唯一性——》因为它的结构是树,所以任何结点都只有一个父节点
  5. 绝对路径:我们把从/开始定位到指定目录,具有唯一性的路径,叫做绝对路径
  6. 相对路径:我们以自己当前所处目录(非根目录)为起始参照位置,来定位到指定目录的路径,叫做相对路径(当起始参照位置改变时,可能相对路径失效!)
  7. 怎么使用相对路径与绝对路径:
    • 绝对路径往往比较长,但是不变,一般在一些固定场景,配置文件中使用
    • 一般命令行输入,比较常用相对路径
  • 示例:
    在这里插入图片描述

7、touch指令

  • 语法: touch [选项] 文件
  • 功能:
    • touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间
    • 或者新建一个不存在的文件
  • 常用选项:
    • -a 或–time=atime或–time=access或–time=use只更改存取时间
    • -c 或–no-create 不建立任何文档
    • -d 使用指定的日期时间,而非现在的时间
    • -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题
    • -m 或–time=mtime或–time=modify 只更改变动时间
    • -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同
    • -t 使用指定的日期时间,而非现在的时间
  • 这里我们不学习touch指令的“选项”,只需要知道touch不能创建目录,只能创建普通文件在这里插入图片描述

8、tree指令

  • 语法: tree [选项] 目录
  • 功能: 将以树状图的形式显示指定目录下所有子目录与文件
  • 常用选项:
    • -L level:限制目录树的层数
    • -a:显示所有文件和目录,包括以点(.)开始的隐藏文件
    • -d:仅显示目录名,不包括文件名
  • 如果你没有下载tree,请在root用户下,输入以下指令进行安装:
yum install -y tree
  • 示例:在这里插入图片描述

9、mkdir指令

  • 语法: mkdir [选项] dirname
  • 功能: 在当前目录下创建一个名为“dirname”的目录
  • 常用选项:
    • -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录
  • mkdir一次只能创建一个目录,当我们需要创建一串路径(即递归建立多个目录)时需要使用选项-p在这里插入图片描述

10、rmdir指令&&rm指令

rmdir是一个与mkdir相对应的指令。mkdir是创建目录,而rmdir是删除目录

  • 语法: rmdir [选项] dirname
  • 适用对象: 具有当前目录操作权限的所有使用者
  • 功能: 删除空目录
  • 常用选项:
    • -p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
  • rmdir一次只能删除一个空目录,不能删除非空目录和文件在这里插入图片描述
  • rmdir携带-p选项,当子目录被删除后如果父目录变成空目录,就连父目录一起删除在这里插入图片描述

rm指令不仅可以删除文件还可以删除目录

  • 语法: rm [选项] [文件名/目录]
  • 适用对象: 所有使用者
  • 功能: 删除文件或目录
  • 常用选项:
    • -f 即使文件属性为只读(即写保护),亦直接删除
    • -i 删除前逐一询问确认
    • -r 删除目录及其下所有文件


tip:

  • 使用rm指令删除时,如果是root用户会提示你是否确定删除(普通用户则不会提示)
  • Linux删除一个文件或目录后就是直接删除,很难找回,所以删除时一定要确定是否删除
  • rm -rf /:删除根目录,即相当于删除OS
  • 删除文件时,如果文件正在使用,不会删除
  • rm:rm可以直接删除指定文件,但是不能直接删除目录
    在这里插入图片描述
  • rm -f 文件名/目录 :rm携带-f选项后,不会再提示用户是否删除,直接删除
    在这里插入图片描述
  • 因为目录本身是递归式定义的,所以也需要递归式删除,所以rm删除目录需要携带选项-r在这里插入图片描述
  • 普通用户删除文件不提示,可以rm携带-i选项,删除前询问用户是否确认删除在这里插入图片描述

知识补充:通配符

*:通配符,匹配任意名称的文件

在这里插入图片描述

三、重点总结

  1. OS现在我们需要记住两个点:管理贯穿
  2. Linux操作的特点:以纯命令行为主
  3. Linux中文件分为两种:目录和普通文件
  4. ls [选项] [目录或文件]:查看文件属性或目录内容(属性)
  5. 指令是可以携带“选项”的,“选项”可将其理解为指令的子功能(选项可以组合在一起使用)
  6. 在Linux中,以.开头文件,我们称为隐藏文件
  7. 在Linux任何一个目录下面都会有两个隐藏文件 . 和 . .
    • .:表示当前路径,它的意义是帮用户定位当前目录下的一个文件
    • . .:表示当前路径的上级路径,它的意义是回退到上级目录
  8. 文件=文件属性+文件内容(所以对文件的操作也只有两种)
  9. pwd:显示用户当前所在目录(Linux不能直接看到用户当前所在目录,需要pwd指令才能看到用户当前所在目录)
  10. 路径分隔符:
    • Linux的路径分隔符:/(斜杆)
    • Windows的路径分隔符:\(反斜杠)
  11. whoami:查看当前登录用户是谁
  12. Linux的用户分为两类:超级用户root和普通用户
  13. 家目录:
    • /root:root用户的家目录
    • /home/xxx:xxx普通用户的家目录
  14. cd 目录:切换目录
  15. 目录结构:Linux的目录结构是一棵多叉树,它的叶子结点一定是目录或非目录文件,路上结点一定是一个非空目录
  16. 我们定位一个文件,通常用路径来定位(因为任何结点都只有一个父节点。)
  17. 绝对路径:从根目录开始定位到指定目录,具有唯一性的路径
  18. 相对路径:以自己当前所处目录(非根目录)为起始参照位置,来定位到指定目录的路径
  19. touch 文件:创建文件
  20. tree [选项] 目录:以树状图形式显示指定目录下所有子目录与文件
  21. mkdir [选项] dirname:在当前目录下创建一个名为dirname的目录
  22. rmdir [选项] dirname:删除空目录(注:不能删除非空目录和文件)
  23. rm [选项] [文件名/目录]:可以直接删除指定文件,删除指定目录需要携带-r选项(目录是递归式定义,所以也需要递归式删除)
  24. 注意:Linux删除一个文件或目录后就是直接删除了,很难找回,所以删除时一定要确定是否删除
  25. *:通配符,匹配任意名称文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/590210.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ入门教学(浅入浅出)

进程间通信 互联网的通讯时网络的基础,一般情况下互联网的资源数据对储存在中心服务器上,一般情况下个体对个体的访问仅限于局域网下,在公网即可完成资源的访问,如各种网站资源,下载资源,种子等。网络通讯…

php使用Canal监听msyql

canal需要java8 去官网下载java8 安装JAVA #创建目录 mkdir -p /usr/local/java/ #解压到目录 tar zxvf jdk-8u411-linux-x64.tar.gz -C /usr/local/java/配置环境变量在 /etc/profile 最后加入 export JAVA_HOME/usr/local/java/jdk1.8.0_411 export CLASSPATH.:$JAVA_HOM…

代码随想录算法训练营DAY50|C++动态规划Part11|300.最长递增子序列、674.最长连续递增序列、718.最长重复子数组

文章目录 300.最长递增子序列思路CPP代码 674.最长连续递增序列思路CPP代码 718.最长重复子数组思路CPP代码 300.最长递增子序列 力扣题目链接 文章讲解:300.最长递增子序列 视频链接:动态规划之子序列问题,元素不连续!| LeetCode…

蓝牙连接手机播放音乐的同时传输少量数据,那些蓝牙芯片可以实现呢

简介 蓝牙连接手机播放音乐的同时连接另一蓝牙芯片传输少量数据,那些蓝牙芯片可以实现呢? 这个需求,其实就是双模的需求 简单描述就是:播放音乐的同时,还可以连接ble,进行数据的传输。二者同时进行,互不…

JavaScript中的Math对象方法、Date对象方法

个人主页:学习前端的小z 个人专栏:JavaScript 精粹 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论! 文章目录 🌟Math对象方法🍄1 Math静态属性🍄2 Math…

精简函数栈帧:优化创建和销毁过程的完全解析(建议收藏,提升内功)

🌈个人主页:是店小二呀 🌈C语言笔记专栏:C语言笔记 🌈C笔记专栏: C笔记 🌈喜欢的诗句:无人扶我青云志 我自踏雪至山巅 文章目录 【前文】一、函数栈帧的概念(stack frame&#xff…

VS(Visual Studio)中查找项目里的中文字符

目录 正则表达式查找中文字符 正则表达式查找中文字符 在Visual Studio (VS) 中查找所有的中文字符,你可以使用其强大的查找和替换功能。不过,由于中文字符的范围非常广泛(包括简体中文、繁体中文、日本汉字、韩国汉字等)&#xf…

【Docker第一课】docker的基本命令和试启动容器(详细图解)

目录 知识梗概 docker的初步了解 了解docker常用命令 试开启容器(这里演示nginx、python3和mysql) 1、nginx容器的启动 2、python3容器的启动 docker的作用 虚拟机与容器的区别 写在前面: 本专栏你将了解docker一些入门知识&#xff…

拼多多新店和老店哪个好做

拼多多新店和老店哪个好做 拼多多推广可以使用3an推客。3an推客(CPS模式)给商家提供的营销工具,由商家自主设置佣金比例,激励推广者去帮助商家推广商品链接,按最终有效交易金额支付佣金,不成交不扣费。是商…

【书生·浦语大模型实战营第二期】Lagent AgentLego 智能体应用搭建——学习笔记6

文章目录 概述Lagent: 轻量级智能体框架Lagent Web Demo用Lagent自定义工具 AgentLego:组装智能体“乐高”直接使用AgentLego作为智能体工具使用AgentLego用AgentLego自定义工具 参考资料 概述 Lagent是什么 一个轻量级开源智能体框架,提供了一些典型工…

计算机毕业设计python在线交友系统django+vue

Flask 是一个轻量级的 Web 框架,使用 Python 语言编写,较其他同类型框架更为灵活、轻便且容易上手,小型团队在短时间内就可以完成功能丰富的中小型网站或 Web 服务的实现。 本在线交友系统管理员功能有个人中心,用户管理&#xff…

面试经典150题——Z 字形变换

面试经典150题 day22 题目来源我的题解方法一 使用StringBuilder数组模拟矩阵方法二 找规律直接构造 题目来源 力扣每日一题;题序:6 我的题解 方法一 使用StringBuilder数组模拟矩阵 如果numRows是1,则直接返回s。 否则,创建nu…

【数据结构】算法的效率(时间复杂度和空间复杂度)

目录 一.算法的效率 二.时间复杂度 1.概念 2.大O的渐进表示法 3.常见时间复杂度计算举例 三.空间复杂度 四.常见复杂度对比 五. 复杂度的oj练习 1.消失的数字 2.轮转数字: 一.算法的效率 算法在编写成可执行程序后,运行时需要耗费时间资源和空…

区块链 | IPFS:Merkle DAG(进阶版)

🦊原文:Merkle DAGs: Structuring Data for the Distributed Web 🦊写在前面:本文属于搬运博客,自己留存学习。 1 Merkle DAG 当我们在计算机上表示图时,必须通过提供节点和边的具体表示来编码我们的数据…

黑马点评项目个人笔记+项目优化调整

博客须知 本篇博客内容来源与黑马点评项目实战篇-16.用户签到-实现签到功能_哔哩哔哩_bilibili,作者对视频内容进行了整合,由于记笔记时图片使用的是本地路径,所以导致博客的图片无法正常显示,如果有图片需求可以下载上方的pdf须…

给thinkpadP15V加装固态硬盘的TIPS

O(∩_∩)O首先要先恭喜小编,终于舍得给咱们的小伙伴加固态硬盘了 1、确定固态硬盘的类型: M.2接口NVMe协议, Pcie通道( Peripheral company interconnect express)(3.0第三代1gb每秒,4.0第四代2 gb每秒)x4…

PDF中伪代码、原理示意图等导出为矢量图

需求:将 LaTeX 中生成的伪代码 PDF 转换成 svg 或 emf 格式的矢量图,然后插入 word 或 ppt 中。 1 伪代码PDF导出为矢量图 1.1 通过 Adobe Illustrator 处理将 先新建一个空白的PDF,然后文件-->置入导入PDF; 2.选中这个图片…

k8s部署maven项目

failed to verify certificate: x509: certificate signed by unknown authority 今天在执行kubectl get nodes的时候报的证书验证问题,看了一圈首次搭建k8s的都是高频出现的问题。 couldn’t get current server API group list: Get “https://kubernetes.docker…

SwiftUI 5.0(iOS 17.0,macOS 14.0+)新 Inspector 辅助视图之趣味漫谈

概览 在 SwiftUI 开发中,苹果为我们提供了多种辅助视图用来显示额外信息从而极大丰富了应用的表现力,比如:Alert、Sheet、ContextMenu 等等。 从 SwiftUI 5.0(iOS 17+)开始, 又增加了一种全新的辅助视图:Inspector。 在本篇博文中,您将学到如下内容: 概览1. Inspe…