当前位置: 首页 > news >正文

Linux:入门学习知识及常见指令

文章目录

  • 入门介绍
    • 操作系统的概念
    • Linux机器的使用
    • Linux上的指令
  • 对文件知识的补充
    • 文件的定义和一些含义
    • 文件和目录的存储
    • 绝对路径和相对路径
  • ls指令
  • pwd指令
  • cd指令
  • touch指令
  • mkdir指令
  • rmdir指令
  • rm指令
  • man指令
  • cp指令
  • mv指令
  • cat指令
  • more指令
  • echo指令
    • 输出重定向
  • less指令
  • find指令
  • grep指令
  • zip/unzip指令

入门介绍

操作系统的概念

操作系统(Operating System)是软件,操作系统的存在是为了让计算机更好用,这是操作系统的根本要义

在计算机内部大致是可以这样进行划分:

在这里插入图片描述
操作系统是一款进行软硬件资源管理的软件,具体如何理解这句话?

在C语言学习中我们写的第一个程序一般都是:

printf("hello world!");

从最终效果来看,printf函数把hello world这句话打印在了显示屏上,我们可以通过显示屏看到这句话,那么实际上,从这句程序到最后打印到显示屏上是需要进行一些复杂的过程,我们编写的程序为什么最终可以访问到硬件?这当中必然离不开操作系统的能力

Linux机器的使用

这里我采用的是XShell的机器,后续的学习也都会用XShell进行学习

登录指令

进入Linux界面,输入

ssh root@xxx.xxx.xxx(ip地址)

Linux上的指令

对于用习惯Windows的我们来说,转到Linux上一大不习惯的地方就是Linux的各种指令,简单来说,你可以在Windows上用鼠标和键盘完成一系列例如进入目录寻找某个文件,复制粘贴文件…等所有操作,而这些操作都是用键盘鼠标完成的,而在Linux上的一大不同点就是把这些全部换成了指令,但我们需要知道的一点是图形化界面和命令行操作的本质都是一样的,都是对操作系统进行直接或间接的操作

我们用的指令,本质上就是可执行程序写的,指令,工具,可执行程序…的本质都是可执行程序

那么介绍完这些,就可以正式开始学习Linux了,打开来自新世界的大门


介绍linux指令中,对于我还没有完全学习的指令只写已经学习完的,没有学习的后续进行补充

对文件知识的补充

文件的定义和一些含义

ls是一个查看目录和文件的指令,那么在这之前首先要对存储的文件有一些基础的认识

新建一个文件,这个文件是否占据空间?
答案是占据!文件的名字,文件的大小,文件的修改日期…这些都会在计算机内存中占据一定的空间,因为这些都是对文件属性的描述,文件可以表示为内容加属性,而从数据的角度来讲,文件的内容和文件的属性都是数据,都是要在磁盘硬盘中留下自己的一席之地,而我们下面讲的ls指令,就是对文件的属性进行的操作

.开头的文件以及本级目录上级目录都是什么?

Linux中,以.开头的文件都是隐藏文件

在Windows图形化界面中,想要返回上一级目录只需要选择退回就可以,而在Linux指令级的界面中,就需要用到本级目录和上级目录:

.      表示的是本级目录,也叫做当前所在目录
..     表示的是上级目录,后面讲的cd指令就是去特定的目录所用的

.本级目录的作用:用来执行一个程序,假如现在有一个程序是a.out,现在我要执行它,我就应该使用下面的指令

正确的方式:
./a.out
不正确的方式:
a.out

而这个./的意义,就是要找到这个程序,再对它进行运行

文件和目录的存储

在Linux系统中,磁盘上的文件和目录被组成了一棵目录树,每个节点都是目录和文件,具体可以这样表示:

在这里插入图片描述
可以类比Windows系统的概念,在Windows系统中,C盘下有很多文件和文件夹,而文件夹中又会有很多文件和文件夹…在Linux中也是如此,root根目录下有user,dev,home等许多文件和文件夹,文件夹又可能有更多的分支,因此根目录实际上是一种多叉树的结构

为什么在Linux系统中要采用这样的结构?

在系统中一定会存在命名一样的文件,而只有通过这种方式才能找到文件的唯一标识文件的方式,因为对于任何一个节点来说,它有且只有唯一的一个父节点

绝对路径和相对路径

在描述一个文件在系统中所处的位置时,可以有两种表示方式,分别是绝对路径和相对路径,绝对路径就是指从根目录出发到这个文件一路的路程表示,而相对路径是指我相对于你所处的位置,例如,现在要表示一下上图中bin文件的路径,我现在所处的目录是在lib路径下

用绝对路径来表示就是
/root/user/bin
用相对路径来表示就是
../bin/a.txt

ls指令

基本语法:ls 项目 目录或文件
功能:对于目录来说,用该命令列出该目录下的所有子目录和文件,对于文件,列出文件名和其他信息
常用的指令

-a:列出目录下的所有文件,包括.开头的隐藏文件
-l :查看目录下的详细信息,显示文件的更多信息

ls -l和ls -a可以一起使用,既显示隐藏文件又显示更多信息
在这里插入图片描述
在这里插入图片描述

pwd指令

语法:pwd
功能:显示用户当前所在的目录

这是一个很简单的指令,就是用来看当前我们所处的是哪个目录

cd指令

语法:cd 目录名
功能:改变工作目录,将当前工作目录转到指定的目录下
例如:

cd … : 返回上级目录
cd /root/litao/linux/ : 绝对路径
cd …/user/ : 相对路径
cd ~:进入用户家目
cd -:返回最近访问目录

touch指令

语法:touch 选项 文件
功能:touch命令参数可以改变文档或目录的日期和时间,包括存取时间和更改时间,或者创建一个不存在的文件
常用选项:

mkdir指令

语法:mkdir 选项 dirname
功能:在当前目录下创建一个名为dirname的目录
常用选项:

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

rmdir指令

rmdir是一个和mkdir向对应的指令,mkdir是用来创建目录,rmdir是用来删除命令
语法:rmdir -p dirname
功能:删除空目录
常用选项

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

rm指令

语法:rm 选项 dirname
功能:删除文件和目录
常用选项

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

man指令

这个指令类似于一个帮助文档,当我们遇到Linux中我们不熟悉的指令时,可以用这个帮助文档来替我们解决问题:
语法:man 选项 命令
功能:帮助我们寻找一些指令含义

cp指令

语法:cp 选项 源文件或目录 目标文件或目录
功能:复制文件或目录
说明:cp指令用于复制文件或目录,如果指定了两个以上的文件或目录,且最后一个的目的地是一个已经存在的目录,则会把它前面所有的文件或目录都复制到这个目录中,若指定了多个文件或目录,而最后一个目的地不存在,就会报错
常用选项:

-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i 或 --interactive 覆盖文件之前先询问用户
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链
接,则一律视为普通文件处理
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

mv指令

mv指令是move的意思,可以用来移动文件或者给文件更改名字,这是Linux下常用的一个命令,用来备份文件或者目录
语法:mv 选项 源文件或目录 目标文件或目录
功能:

  1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
  2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
  3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。
    常用选项:

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

cat指令

语法:cat 选项 文件
功能:查看目标文件的内容
常用选项:

-b 对非空输出行编号
-n 对输出的所有行编号
-s 不输出多行空行

more指令

语法:more 选项 文件
功能:类似于cat
常用选项:

-n 对输出的所有行编号
q 退出more

echo指令

echo后跟着内容,默认情况下会把内容打印到显示屏上,通过输出重定向的指令可以把内容打印到文件中

在这里插入图片描述

输出重定向

首先要对Linux有直观的认识,Linux下一切皆文件,不管是从显示器写入还是从键盘写入,我们都可以把这个过程看成是文件的操作,下面就引入了输出重定向的概念

那么如何理解一切皆文件的概念?这里echo是把内容输出到显示屏中,我们可以把echo写到显示屏的操作看成向一个叫做显示屏的文件中写入内容,而输出重定向就是把这段本该输出到显示器文件的内容输出到其他文件中,因此可以完成下面的操作

在这里插入图片描述
那什么又是追加重定向?它和输出重定向有什么区别呢?
这里的追加重定向和输出重定向本质上和文件的操作中关于a和w是一样的
追加重定向不会覆盖原文件,只会在原来文件的基础上增加,而输出重定向会覆盖原文件重新写入

在这里插入图片描述

less指令

这里介绍less指令的各项作用和功能

首先nano中创建一个文件,里面是hello linux
在这里插入图片描述
less工具指令是对文件或其他输出进行分页显示的工具,在Linux中功能十分强大

语法:
less 参数 文件
功能:less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。
常用选项:

-i 忽略搜索时的大小写
-N 显示每行的行号
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
q:quit

find指令

Linux下find命令在目录结构中搜索文件,并执行指定的操作。
Linux下find命令提供了相当多的查找条件,功能很强大。
语法: find pathname -options
功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
常用选项:
-name 按照文件名查找文件

grep指令

语法: grep [选项] 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行

zip/unzip指令

语法: zip 压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式
常用选项:
-r 递 归处理,将指定目录下的所有文件和子目录一并处理


Linux指令只是入门要掌握的一些基本操作

相关文章:

Linux:入门学习知识及常见指令

文章目录 入门介绍操作系统的概念Linux机器的使用Linux上的指令 对文件知识的补充文件的定义和一些含义文件和目录的存储绝对路径和相对路径 ls指令pwd指令cd指令touch指令mkdir指令rmdir指令rm指令man指令cp指令mv指令cat指令more指令echo指令输出重定向 less指令find指令grep…...

K8s:Kubernetes 故障排除方法论

写在前面 博文内容为节译整理文中提到的工具大部分是商业软件,不是开源的,作为了解理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它…...

TCP 三次握手四次挥手浅析

大家都知道传输层中的TCP协议是面向连接的,提供可靠的连接服务,其中最出名的就是三次握手和四次挥手。 一、三次握手 三次握手的交互过程如下 喜欢钻牛角尖的我在学习三次握手的时候就想到了几个问题:为什么三次握手是三次?不是…...

【软件安装】MATLAB_R2021b for mac 安装

Mac matlab_r2021b 安装 下载链接:百度网盘 下载链接中所有文件备用。 我所使用的电脑配置: Macbook Pro M1 Pro 16512 系统 macOS 13.5 安装步骤 前置准备 无此选项者,自行百度 “mac 任何来源”。 1 下载好「MATLAB R2021b」安装文…...

电脑维护:10妙招,让你的电脑更加稳定!

你的电脑已经成为你工作、学习、娱乐的最佳工具之一,但是如果你不做好电脑维护工作,就可能面临着电脑变慢、蓝屏、崩溃等问题。在这篇文章中,我们将介绍10个电脑维护步骤,让你的电脑更加稳定! 为什么需要电脑维护&…...

大数据面试题:Kafka的单播和多播

面试题来源: 《大数据面试题 V4.0》 大数据面试题V3.0,523道题,679页,46w字 参考答案: 1、单播 一条消息只能被某一个消费者消费的模式称为单播。要实现消息单播,只要让这些消费者属于同一个消费者组即…...

python与深度学习(八):CNN和fashion_mnist二

目录 1. 说明2. fashion_mnist的CNN模型测试2.1 导入相关库2.2 加载数据和模型2.3 设置保存图片的路径2.4 加载图片2.5 图片预处理2.6 对图片进行预测2.7 显示图片 3. 完整代码和显示结果4. 多张图片进行测试的完整代码以及结果 1. 说明 本篇文章是对上篇文章训练的模型进行测…...

开发一个RISC-V上的操作系统(五)—— 协作式多任务

目录 往期文章传送门 一、什么是多任务 二、代码实现 三、测试 往期文章传送门 开发一个RISC-V上的操作系统(一)—— 环境搭建_riscv开发环境_Patarw_Li的博客-CSDN博客 开发一个RISC-V上的操作系统(二)—— 系统引导程序&a…...

Mybatis-plus集合

目录 mybatis-plus集合1、简介2、特性3、开始使用4、QueryWrapper的使用5、补充 mybatis-plus集合 1、简介 MyBatis-Plus (简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 m…...

C++ 结构体和联合体

1.结构体 结构体是一种特殊形态的类,它和类一样,可以有自己的数据成员和函数成员,可以有自己的构造函数和析构函数,可以控制访问权限,可以继承,支持包含多态,结构体定义的语法和类的定义语法几…...

使用TensorFlow训练深度学习模型实战(下)

大家好,本文接TensorFlow训练深度学习模型的上半部分继续进行讲述,下面将介绍有关定义深度学习模型、训练模型和评估模型的内容。 定义深度学习模型 数据准备完成后,下一步是使用TensorFlow搭建神经网络模型,搭建模型有两个选项…...

lucene、solr、es的区别以及应用场景

目录 1. Lucene:2. Solr:3. Elasticsearch: Lucene、Solr 和 Elasticsearch(ES) 都是基于 Lucene 引擎的搜索引擎,它们之间有相似之处,但也有一些不同之处。 Lucene 是一个低级别的搜索引擎库,它提供了一种用于创建和维护全文索引的 API&…...

Java方法的使用(重点:形参和实参的关系、方法重载、递归)

目录 一、Java方法 * 有返回类型,在方法体里就一定要返回相应类型的数据。没有返回类型(void),就不要返回!! * 方法没有声明一说。与C语言不同(C语言是自顶向下读取代码)&#…...

登录页的具体实现 (小兔鲜儿)【Vue3】

登录页 整体认识和路由配置 整体认识 登录页面的主要功能就是表单校验和登录登出业务 准备模板 <script setup></script><template><div><header class"login-header"><div class"container m-top-20"><h1 cl…...

大学如何自学嵌入式开发?

1. C语言&#xff1a;C语言是基础中的基础&#xff0c;刚开始学习不用太深入&#xff0c;一本常用的C语言的教材即可&#xff0c;注意不是当教科书看&#xff0c;而是看完一节过后&#xff0c;打开电脑把后面的习题都写出来&#xff0c;并且编译运行一遍&#xff0c;一定要动手…...

pytorch学习——线性神经网络——1线性回归

概要&#xff1a;线性神经网络是一种最简单的神经网络模型&#xff0c;它由若干个线性变换和非线性变换组成。线性变换通常表示为矩阵乘法&#xff0c;非线性变换通常是一个逐元素的非线性函数。线性神经网络通常用于解决回归和分类问题。 一.线性回归 线性回归是一种常见的机…...

00 - RAP 开发环境配置

文章目录 [1] Eclipse - ADT[2] BTP / S4HC[3] Add ABAP Env. Service[4] Conn. to BTP [1] Eclipse - ADT 关于如何安装配置&#xff0c;参见文章: Install ABAP Development Tools (ADT) and abapGit Plugin Eclipse Eclipse - ADT Eclipse - abapGit Plugin [2] BTP / S4…...

山西电力市场日前价格预测【2023-08-01】

日前价格预测 预测明日&#xff08;2023-08-01&#xff09;山西电力市场全天平均日前电价为310.15元/MWh。其中&#xff0c;最高日前电价为335.18元/MWh&#xff0c;预计出现在19: 45。最低日前电价为288.85元/MWh&#xff0c;预计出现在14: 00。 价差方向预测 1&#xff1a;实…...

QT--day5(网络聊天室、学生信息管理系统)

服务器&#xff1a; #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);//给服务器指针实例化空间servernew QTcpServer(this); }Widget::~Widget() {delete ui; …...

【用IDEA基于Scala2.12.18开发Spark 3.4.1 项目】

目录 使用IDEA创建Spark项目设置sbt依赖创建Spark 项目结构新建Scala代码 使用IDEA创建Spark项目 打开IDEA后选址新建项目 选址sbt选项 配置JDK debug 解决方案 相关的依赖下载出问题多的话&#xff0c;可以关闭idea&#xff0c;重启再等等即可。 设置sbt依赖 将sbt…...

AI、机器学习与深度学习的本质区别与选型指南

1. 这不是概念辨析课&#xff0c;而是一张能让你少走三年弯路的“技术地图”我带过三十多个从零起步转行做数据工作的学员&#xff0c;几乎每个人在刚接触这个领域时&#xff0c;都会被这三个词绕晕&#xff1a;AI、机器学习、深度学习。有人翻了十页维基百科&#xff0c;越看越…...

【文档翻译】QNX Neutrino RTOS 7.1用户手册 - 第五章 文件操作

本文翻译自BlackBerry官方提供的QNX Neutrino RTOS User’s Guide&#xff0c;仅供学习参考使用 第五章 文件操作 文章目录第五章 文件操作文件类型文件名和路径名绝对路径和相对路径点和点点目录没有硬盘字母以点开头的路径名扩展名路径空间映射文件名规则所有内容的存储位置…...

用 MinIO 搭建 S3 兼容对象存储服务

用 MinIO 搭建 S3 兼容对象存储服务 分类&#xff1a;开源项目部署 MinIO 适合附件、备份归档和 S3 兼容对象文件。这类主题真正跑起来并不难&#xff0c;难的是上线后稳定、可备份、能排错。本文按实操方式整理一套可以直接落地的流程&#xff0c;默认你已经会登录 Linux 服务…...

Gemini 访问要不要额外网络工具?国内直连体验怎么看

最近不少开发者开始把 Gemini 放进日常工作流里&#xff1a;查资料、写代码注释、整理技术方案、做内容大纲。但实际使用前&#xff0c;大家最关心的往往不是模型参数&#xff0c;而是“能不能顺畅访问”。如果只是想先体验模型能力&#xff0c;可以通过 库拉 这类 AI模型聚合平…...

大中小型企业数据配置年度成本估算分析

引言 在数字化转型浪潮下&#xff0c;数据已成为企业的核心资产。无论是初创公司、中型企业还是大型集团&#xff0c;合理规划数据存储、处理与分析的成本&#xff0c;对于优化IT预算、提升投资回报率至关重要。本文旨在为不同规模的企业提供一个清晰、可操作的年度数据配置成本…...

独立开发者如何利用Taotoken同时管理多个AI项目的模型调用

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 独立开发者如何利用Taotoken同时管理多个AI项目的模型调用 对于独立开发者而言&#xff0c;同时维护多个小型产品是常态。每个产品…...

逻辑回归实战:从原理、数值稳定到生产级代码实现

1. 什么是逻辑回归&#xff1a;从医生诊断到快递分拣的真实场景逻辑回归不是教科书里那个干巴巴的“S型曲线”&#xff0c;它是我过去八年带团队做工业质检项目时&#xff0c;每天早上打开监控大屏第一眼就要确认的模型——当产线摄像头拍下第372个电路板&#xff0c;系统在0.8…...

AI时代的“新文盲”:不会用提示词的技术人正在掉队

2026年的软件测试领域&#xff0c;正在经历一场前所未有的认知分化。这种分化不再是手工测试与自动化测试的界限&#xff0c;也不是代码能力的高低之别&#xff0c;而是在AI辅助工具全面渗透到测试工作流的今天&#xff0c;能否通过“提示词”&#xff08;Prompt&#xff09;精…...

大模型MoE架构揭秘:稀疏激活与专家路由原理

1. 这不是“参数越多越强”的简单故事&#xff1a;拆解大模型里被悄悄激活的那2% 你可能已经看过不少标题党文章&#xff0c;说“GPT-4有1.8万亿参数”&#xff0c;然后配上一张CPU满载、风扇狂转的动图&#xff0c;仿佛这串数字本身就在燃烧算力。但真实情况恰恰相反——它只用…...

多摄像头融合平台:构建智能视觉感知的基石

摘要随着安防监控、智慧交通、工业检测等领域对视觉感知能力要求的不断提升&#xff0c;单一摄像头的视野局限和信息孤岛问题日益凸显。多摄像头融合平台通过整合多个视角的图像数据&#xff0c;实现时空对齐、目标关联与信息互补&#xff0c;显著提升了感知系统的准确性与鲁棒…...