【Linux】Linux基本指令1

news2024/11/18 10:58:29

1.软件,OS,驱动

我们看看计算机的结构层次

1.1.操作系统

操作系统是一款做 软硬件管理 的软件

操作系统(计算机管理控制程序)_百度百科 (baidu.com)

操作系统(英语:Operating System,缩写:OS)是一种内置的程序,用来协作计算机的各种硬件,以与用户进行交互。常见有Windows,macOS 和开源的 Linux。

一个好的操作系统的衡量指标:稳定,快速,安全

这些东西都是由操作系统层决定的:对下通过对下管理好软硬件资源的手段,达到对上提供良好(稳定,快速,安全)的操作/使用环境

我们来理解一下我们在计算机的所有操作

  • printf->打印
  • 文件->磁盘文件写入
  • 游戏->向网络中发送数据

我们在计算机上的所有行为都会被转换为硬件行为

我们所有的软件行为都会自顶向下贯穿我们计算机的结构

即:信息按 应用软件->操作系统->设备驱动->硬件 路径进行执行

也就是所有的软件行为都和操作系统相关 

1.2.驱动 

驱动(计算机软件术语)_百度百科 (baidu.com)

驱动全称设备驱动程序,是添加到操作系统中的特殊程序,其中包含有关硬件设备的信息。此信息能够使计算机与相应的设备进行通信。

驱动程序是硬件厂商根据操作系统编写的配置文件,可以说没有驱动程序,计算机中的硬件就无法工作。 

1.3.软件

应用软件是在操作系统之上的

软件(按照特定顺序组织的计算机数据和指令的集合)_百度百科 (baidu.com)

软件(中国大陆及香港用语,台湾称作软体,英文:software)是一系列按照特定顺序组织的计算机数据和指令的集合。一般来讲软件被划分为系统软件、应用软件和介于这两者之间的中间件。

软件并不只是包括可以在计算机(这里的计算机是指广义的计算机)上运行的电脑程序,与这些电脑程序相关的文档一般也被认为是软件的一部分。

2.Linux操作的特点

Linux操作的特点:纯命令行(注:linux也有图形化界面)

因为企业里面就是命令行,所以我们只学习命令行

Windows也是命令行/图形化界面,只不过它是面对大众的,所以图形化特别有必要,而Linux专门用于企业,所以纯命令行

Windows有个对应的系统软件,叫powershell,它支持了linux命令行

我们可以在这上面输入Linux命令行

我们也可以提供win+x,再点击终端管理员也可以打开

 我们可以讨论一个问题

先有指令还是先有图形?为什么?

先有指令,所以指令更接近操作系统

键盘也比鼠标先出现

键盘字母的排序是起源打字机

 3.Linux操作指令

我们采用Linux指令和Windows界面操作的对比来学习

3.1.快速学习5条指令

3.1.1.pwd指令和ls指令

我们使用纯ls

ls

显示的是当前目录下的文件

那当前目录是什么呢?

我们可以使用指令pwd来显示当前目录

我们的当前目录可能不一样,我是root账号,你们可能是普通用户,可能是/home/xxx

上面这个操作就像下面的

我们的pwd就相当于把上面的路径复制一下,拿到搜索界面去搜

3.1.2.mkdir

我们想要在桌面建立一个文件夹,我们在windows上操作起来很简单

谁都会是吧,我就不演示了

在linux下,我们也想创建文件夹

我们需要使用

mkdir 文件名

指令和文件夹名之间要有空格(可以不是1个) 

没有空格,就会像下面一样报错 

我们怎么知道有没有成功创建呢?

我们还是使用ls指令

显然我们已经创建成功了

所以在linux操作系统下

mkdir 108_class

相当于在Windows下的

3.1.3.cd

我们创建文件夹,就是为了存为东西,我们就要进去文件夹,我们在windows可以双击进去

那linux呢?

我们可以使用cd命令

cd 文件名

 

我们怎么知道我们进去了呢?

3.1.4.touch

创建文本文件

touch 文件名

跟windows下创建一个文本文件一样

3.2.ls指令详解

它的主要作用是查看文件

语法:

ls [选项][目录或文件]

功能:对于目录,该命令列出该目录下的所有子目录与文件。

对于文件,将列出文件名以及其他信息。

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

3.2.1.ls -l和ls -a

windows上也是可以的 ,打开powershell,自己去试试看

我们创建一个文件是要占据磁盘空间的

3.2.1.文件=文件内容+文件属性

文件的属性是数据吗?显然是

文件的操作=文件内容的操作+文件属性的操作

所以问题来了

这个ls指令是显示文件属性,只不过只显示文件名属性

ls -l显示更多文件属性

我们再看一个例子

这个信息和我们windows上面的好像啊

 

 我们知道ls就是查文件属性的,后面的选项不就明白了吗!!

注意ls -l可以简化成ll

3.2.3.选项的写法

 下面展示了多种风格的写法,它们都是等价的

 

我们看看第一列的第一个字符 

 

它代表文件的类型

  • d:的表示目录
  • -:文件是一个普通文件

.和..文件

我们注意到这个ls -la比ls -l多了一个以.开头的,还有一个以..开头的

这个.开头的代表隐藏文件 ,我们可以验证一下

我们发现我们看不到这些创建的文件

我们换ls -la就能看到这些隐藏文件了 

 ls -a显示所有的文件,包括隐藏文件

windows里面也有隐藏文件,这个就不说了,自己去看

..开头的是什么呢?

我们打开我们创建的dir1文件夹

发现里面居然已经有了.和..文件了

 Linux下,任何一个目录都有两个隐藏文件,一个.,一个..

我们可以去打开这个..文件

很明显,这是回退路径

..表示当前路径的上一级路径,即这个..代表回退,和cd的作用是相反的

 下面这个是回到上一级路径的

cd ..

.表示的是当前路径

我们可以验证一下

 

.为什么代表当前路径呢,大家在学习路径的知识的时候,肯定看过./这个

比如./Adobe Premiere Pro 2020

3.2.5.ls -d

我们在root目录下查看108_class的属性,结果却之间给我查到了108_class里面文件的属性去了

这个时候我们就可以使用ls -dl来查看了

 3.2.6.ls -F

很简单啊 

 3.3.pwd和cd指令

pwd指令就是查看当前路径

 3.3.1.cd

cd就是打开文件/目录的功能

cd 目录名

cd..是回退

 

我们再看第二条

这些路径上的斜杠(/)是路径分隔符,在linux里用/来表示

在windows里面路径分割符(\)是反斜杠

 

我们发现一直回退,发现只能回退到/这里

这个/就是linux的根目录,也就是说/是一个文件

 我们查看一下,发现里面的文件我们看不懂

我们换一个指令就明白了 

 

我们发现这个/是一个d开头的,所以他是一个文件,所以他是根目录 

在一个目录里,一个可以再放目录或者普通文件,所以linux文件结构是多叉树的结构 

它的叶子节点一定是空目录或者非目录文件,路上节点一定是一个非目录

 所以我们所有对文件或者目录的增删查改,本质都是对这棵多叉树的增删查改

我们定位一个文件用路径来定位,路径具有唯一性,因为任何结点都只有一个父节点

我们把从/开始定位到指定位置,具有唯一性的路径,叫绝对路径

 我们便可使用cd来进入特定文件

我们再看第三条

这个..是上一级目录的意思,我们使用../就是回到了当前目录的上一级目录,../day02就代表回到当前目录的上一级目录里寻找day02的文件

我们以当前所处路径为起始参照位置,来进行特定文件的定位,这种路径叫相对路径

绝对路径和相对路径
  • 绝对路径相对较长,但是不变,一般在一些固定场景,配置文件中使用
  • 一般命令行输入,比较常用相对路径

我们可以看一下网站

https://baike.baidu.com/item/Linux/27050icon-default.png?t=N7T8https://baike.baidu.com/item/Linux/27050我们只看com后面那个/item/Linux/27050,这个分隔符就是linux风格的分隔符,这就说明这个网站是用linux操作系统制作的

 我们看一下例子

 

我们看第4条

我们退出xshell,重新登陆我们的云服务器

输入下面这个指令

我们就可以很清楚的知道默认目录就是/root,而且使用whoami可以知道我们登录的账号名是什么

用户分为两种

  • 超级用户root
  • 普通用户

centos系统里面,所有的普通用户都是放在/home目录下

我们可以使用ls /home来查看普通用户 

windows的家目录

这个对应一个普通用户的家目录

windows也可以再添加用户,这个自己去搜

windows也有超级用户root,我们以管理员身份运行就是root账号运行

我们回到cd这里来

我们直接进入了登录的家目录

我们看第五条

我们看例子

这个就是返回上次访问的目录

3.4.touch指令

作用就是创建一个普通文件

语法:

touch [选项]... 文件...

功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。

常用选项: 

  • -a 或--time=atime或--time=access或--time=use只更改存取时间。  
  • -c  或--no-create  不建立任何文档。
  • -d 使用指定的日期时间,而非现在的时间。
  • -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
  • -m 或--time=mtime或--time=modify  只更改变动时间。
  • -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
  • -t 使用指定的日期时间,而非现在的时间。

我们先看看

3.5.mkdir 

创建一个目录(文件夹)

语法:mkdir [选项] dirname...

功能:在当前目录下创建一个名为 “dirname”的目录

常用选项: -p, --parents  可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立 好那些尚不存在的目录,即一次可以建立多个目录;

我们往往是创建一个目录,但是这样子在创建深层次的目录时未免太复杂了些

我们先执行这个命令

这个是安装tree命令的

注意要root账号

安装完了之后我们就可以使用tree命令了

 

这样子文件就按树的结构显示出来了

我们回到正题

这就创建好了

3.6.rmdir指令 && rm 指令(重要): 

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

语法:rmdir [-p][dirName]

适用对象:具有当前目录操作权限的所有使用者

功能:删除空目录

常用选项:

  • -p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。

很好啊

我们接着看

rmdir只能删除空目录,其他的不能删除 

这个时候,只能用rm命令

rm命令可以同时删除文件或目录

语法:rm [-f-i-r-v][dirName/dir]

适用对象:所有使用者

功能:删除文件或目录

常用选项:

  • -f 即使文件属性为只读(即写保护),亦直接删除
  • -i 删除前逐一询问确认
  • -r 删除目录及其下所有文件

这个问我们要不要删除,我们回复y即可,n代表不想删除,普通账号可能没有这个提示

 Linux默认情况下没有回收站哦


 

我们可以把那个提示关闭

 注意一下 

目录不能删除

我们换个选项即可

 

 我们好烦这个提示,我们可以把这个提示给关了

rm -rf可以帮你

注意:没事不要执行下面这个语句

 

rm -rf /

整个操作系统都会被你删掉

 未完待续......

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

60. UE5 RPG 使用场景查询系统(EQS,Environment Query System)实现远程敌人寻找攻击位置

UE的Environment Query System(EQS)是环境查询系统,它是UE4和UE5中用于AI决策制定过程中的数据采集和处理的一个强大工具。EQS可以收集场景中相关的数据,利用生成器(Generator)针对用户的测试(T…

身份认证页面该怎么设计更加合理?

一、认证页面的作用 认证页面在应用程序中具有以下几个重要的作用: 验证用户身份:认证页面的主要作用是验证用户的身份。通过要求用户提供正确的凭据(如用户名和密码、生物特征、验证码等),认证页面可以确认用户是合法…

安卓开机启动阶段

目录 概述一、boot_progress_start二、boot_progress_preload_start三、boot_progress_preload_end四、boot_progress_system_run五、boot_progress_pms_start六、boot_progress_pms_system_scan_start七、boot_progress_pms_data_scan_start八、boot_progress_pms_scan_end九、…

Docker(三) 容器管理

1 容器管理概述 Docker 的容器管理可以通过 Docker CLI 命令行工具来完成。Docker 提供了丰富的命令,用于管理容器的创建、启动、停止、删除、暂停、恢复等操作。 以下是一些常用的 Docker 容器命令: 1、docker run:用于创建并启动一个容器。…

ubuntu22.04安装调节显示器亮度工具

1 介绍 软件名叫 DDC/CI control,官网 2 安装方法 sudo apt install intltool i2c-tools libxml2-dev libpci-dev libgtk2.0-dev liblzma-dev3 效果 进入软件,忽略告警信息

selenium 学习笔记(一)

pip的安装 新建一个txt curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py 把上面的代码复制进去后,把后缀名改为.bat然后双击运行 当前目录会出现一个这个文件 然后在命令行pyhon get-pip.py等它下好就可以了selenium安装 需要安装到工程目…

【进程空间】通过页表寻址的过程

文章目录 前言介绍页表、页框、页目录的概念页框页表页目录页表和页目录的分配 一级页表和二级页表一级页表寻址过程 二级页表寻址过程 一级页表和二级页表的对比 前言 我们知道每个进程都有属于自己的虚拟地址空间,且每个进程的虚拟地址都是统一的。要想通过虚拟地…

OrangePi AIpro测评:智能与创新的完美结合

OrangePi AIpro上手指南 简介 香橙派与华为合作发布的香橙派AiPro为Ai主力,为边缘设备的Ai计算提供了可能。 集成图形处理器,拥有8GB/16GB LPDDR4X(我这个是8G内存版本的),可以外接32GB/64GB/128GB/256GB eMMC模块&a…

【从零开始学习RabbitMQ | 第三篇】什么是延迟消息

目录 前言: 延迟消息: 延迟消息实现方式: 死信交换机: 延迟消息插件: 1.基于注解的方式 2.基于Bean的方式 总结: 前言: 在现代软件开发中,异步消息处理已成为构建可扩展、高可…

CR渲染噪点严重怎么办?常见噪点来源+排查方法

使用Corona渲染器进行渲染时,画面出现噪点是常见现象,尤其是在渲染初期。轻微的高频噪点通常是正常的,但如果经过多次渲染或长时间渲染后噪点依然明显,就可能意味着渲染设置或场景本身存在问题。虽然我们可以利用降噪功能模糊噪点…

5G专网驻网失败分析(suci无效)

suci 5G终端第一次驻网时,注册消息Registartion request中携带的5GS mobile identity要携带suci类型的mobile identity。 注册消息协议规范见5G NAS 协议3gpp TS24.501 8.2.6 Registration request。 suci协议规范参见3gpp TS24.501 9.11.3.4 5GS mobile identity …

iOS--工厂设计模式

iOS--工厂设计模式 设计模式的概念和意义类族模式UIButton作为类族模式的例子总结 三种工厂设计模式简单工厂模式(Simple Factory Pattern):代码实例 工厂方法模式(Factory Method Pattern):代码实例 抽象工…

【NumPy】全面解析NumPy的astype函数:高效数据类型转换指南

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

Python | Leetcode Python题解之第105题从前序与中序遍历序列构造二叉树

题目: 题解: class Solution:def buildTree(self, preorder: List[int], inorder: List[int]) -> TreeNode:if not preorder:return Noneroot TreeNode(preorder[0])stack [root]inorderIndex 0for i in range(1, len(preorder)):preorderVal pr…

接口性能测试复盘:解决JMeter超时问题的实践

在优化接口并重新投入市场后,我们面临着一项关键任务:确保其在高压环境下稳定运行。于是,我们启动了一轮针对该接口的性能压力测试,利用JMeter工具模拟高负载场景。然而,在测试进行约一分钟之后,频繁出现了…

前端 CSS 经典:水波进度样式

前言&#xff1a;简单实现水波进度样式&#xff0c;简单好看。 效果图&#xff1a; 代码实现&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"utf-8" /><meta http-equiv"X-UA-Compatible" cont…

产线虚拟现实vr仿真软件开发在线上能全面呈现企业品质和专业度

在数字化浪潮中&#xff0c;上海VR全景场景制作公司凭借其领先的VR全景制作技术&#xff0c;正为各行各业带来前所未有的沉浸式体验。无论是学校企业场地的生动展示&#xff0c;还是汽车内饰与外观的360度全景呈现&#xff0c;我们都能通过VR虚拟现实制作技术&#xff0c;让您的…

双击移动硬盘打不开?原因分析与数据恢复全攻略

在日常生活和工作中&#xff0c;移动硬盘作为数据存储和传输的重要工具&#xff0c;扮演着至关重要的角色。然而&#xff0c;当我们遇到双击移动硬盘无法打开的情况时&#xff0c;往往会感到十分困扰。本文将详细探讨双击移动硬盘打不开的原因&#xff0c;并提供两种有效的数据…

(C语言) 泛型表达式

文章目录 ⭐语法⭐举例&#x1f6a9;判断对象类型&#x1f6a9;判断指针&#x1f6a9;函数重载&#x1f6a9;嵌套使用 END ⭐语法 Ref: 泛型选择 (C11 起) - cppreference.com 关键词&#xff1a; Genericdefault _Generic(控制表达式 , 关联列表) (C11 起) 关联列表 类型名:…

floodfill 算法(上)

目录 图像渲染 题意&#xff1a; 题解&#xff1a; 非递归&#xff1a; 递归&#xff1a; 岛屿数量 题解&#xff1a; 非递归&#xff1a; 递归&#xff1a; 岛屿的最大面积 题解&#xff1a; 非递归&#xff1a; 递归&#xff1a; 被围绕的区域 题解&#xff1a…