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

Linux简单介绍

Linux简单介绍

    • 编译器
      • VMware虚拟机
      • Ubuntu——LinuxOS
        • 为什么使用LinuxOS?
    • 目录结构
      • Windows目录结构
      • Linux操作系统
        • home是不是家目录?
    • Linux常用命令
      • 终端
      • 命令行提示符与权限切换
      • 命令
        • tab 作用:自动补全
        • 上下箭头
        • pwd命令
        • ls命令
        • mkdir命令
        • touch命令
        • rm命令
        • rmdir命令
        • cd命令
        • cp的命令
        • mv命令
        • cat与more
        • 关机重启
    • Vim编辑器
    • gcc编译器
    • GDB调试工具

编译器

VMware虚拟机

虚拟出的一个PC机,独立于Windows系统之外的虚拟操作系统。允许用户在单一的物理硬件上运行多个操作系统实例。

Ubuntu——LinuxOS

ubuntu是基于Linux内核的一个完整的操作系统,是Linux发行的版本之一;
不仅包括内核,还包括用户界面、应用程序和管理工具等
位数会影响最大存储和处理速度

为什么使用LinuxOS?
  • 嵌入式以应用为中心,以计算机技术为基础,软硬件可剪裁
  • Linux代码开源,也就是可剪裁,贴合嵌入式需要
  • Linux下一切皆文件

目录结构

Windows目录结构

  • Windows目录结构有盘符之分(像倒置的森林)
    在这里插入图片描述

Linux操作系统

  • 一切皆文件(倒置的一棵树)
    在这里插入图片描述
  • 根目录(/):顶层目录
  • 绝对路径:一切从根目录开始的路径(/home/linux64/Desktop)
    第一个斜杠为根目录,除了第一个斜杆以外的所有斜杠都表示分隔符
  • 相对路径:从当前位置开始的路径
  • 家目录(~)
home是不是家目录?
  • home不是家目录,home之下是用户,并且可以有多个用户,用户之下才是家目录
  • 处于家目录之上,普通用户没有操作权限

Linux常用命令

终端

打开终端

快捷键Ctrl+alt+t:打开默认家目录路径的终端
快捷键ctrl+shift+n:打开和当前路径相同的终端  

控制终端

Ctrl+shift++):放大终端窗口和字体
ctrl+(-):缩小终端窗口和字体
终端输入clear或快捷键ctrl+l:清屏

命令行提示符与权限切换

  • 切换普通用户权限和超级用户权限
//普通($)————超级(#)
sudo  -i
或sudo su
//超级(#)————普通($)
su - 用户名

用户名@主机名:当前路径$
在这里插入图片描述

命令

命令格式

命令 [选项] [参数]

注意:

  • []括起来的可以省略 选项:命令的拓展功能; 参数命令需要操作的对象
  • 三者之间需要空格隔开
tab 作用:自动补全
  • 按一次
    在这里插入图片描述
  • 按两次
    在这里插入图片描述
上下箭头

上下箭头作用----查看历史命令

pwd命令

显示当前所在的绝对路径

ls命令
  • ls命令作用:显示当前路径下的文件
  • 所有文件根据颜色分:
    蓝色:文件夹;
    白色:文件
    绿色:可执行文件
    淡蓝色:链接文件
    在这里插入图片描述
 man ls //查看ls的帮助文档ls --help //打开ls的帮助文档

直接使用

ls //显示当前目录下的文件和文件夹

显示指定路径下的文件

ls / //  /命令用于列出根目录下的所有文件
ls -l //显示当前路径下的文件以及属性

在这里插入图片描述

ls -a //显示当前路径下的所有文件(包含隐藏文件),(以.开头的是隐藏文件)(隐藏文件及文件夹是用来保护敏感信息或避免用户误操作的机制)
ls -la //显示所有文件的属性
ls -la 路径 //显示指定路径下的所有文件的属性
mkdir命令
  • mkdir命令的作用:创建文件夹(一次可以创建多个)
 mkdir 文件夹名

在这里插入图片描述

mkdir -p 文件夹名/文件夹名/...   //可以创建多级目录,多个层级

在这里插入图片描述

touch命令
  • 作用:创建空文件(一次可以创建多个)
touch 文件名

在这里插入图片描述

rm命令
  • 作用:删除文件/文件夹(一次可以删除多个)
rm 文件名
rm -r 文件夹名
rm -ri 文件夹名   //删除文件夹并且会询问你是否要删除
rmdir命令
  • rmdir作用:删除空文件(一次可以删除多个)
rmdir 文件夹名

在这里插入图片描述

cd命令
  • cd作用:切换当前目录到其他目录
cd  //直接回到家目录
cd .. //进入上一级目录
cd - //进入上一次操作的路径
cd 绝对路径/相对路径  //进入绝对路径或者相对路径

在这里插入图片描述

cp的命令
  • 作用:复制文件或文件夹到目标路径下

  • cp -r 作用:用于递归复制目录及其内容另一个位置

cp 源文件 目标文件
cp -r 源文件夹  目标文件
mv命令
  • 作用1:移动(移动指定的文件或文件夹到目标路径下)
mv  文件/文件夹  目标文件
  • 作用2:重命名(将文件改名)
mv 原文件名 新文件名
cat与more
  • cat作用:查看文档内容,适合查看比较短的文档
cat 文件名
  • more作用:查看文档内容,适合较长文档
more 文件名

查看较长文档:

  1. 按space(空格)向下走一页
  2. 按b向上走一页
  3. 按enter(回车)向下走一行
  4. 按q退出
关机重启
sudo reboot  //重启
sudo shutdown -h +30  //30分钟之后关机
sudo shutdown -h now  //现在关机

Vim编辑器

vim 文件名

(如果文件存在,就进入文件并进行编辑,如果不存在,则创建文件并进入编辑)

编辑器存在的三种模式:

  1. 命令行模式(默认)
  2. 插入模式
  3. 底行模式

三种模式如何转换?

命令行模式——>插入模式 (i)
插入模式——>命令行模式 (esc)
命令模式——>底行模式 (shift+:)
底行模式——>命令行模式 (esc)

在这里插入图片描述
底行模式下:
w:保存
q:退出
wq: 保存并退出
q!:强制退出
wq!:保存并强制退出
set nu:显示行号
set nonu:取消显示行号

命令行模式下:
yy:复制
dd:剪贴(剪贴后不粘贴则为删除)
p:粘贴
nyy:复制n行
ndd:删除n行
u:撤销
Ctrl+r:反撤销

gcc编译器

编译:编译为计算机能够识别的二进制文件

法一:

gcc hello.c   //这种方式默认生成可执行文件名为a.out

执行可执行文件

./a.out

法二

gcc hello.c -o hello

这种方式生成的可执行文件的名字为指定名字hello
执行可执行文件

./hello

GDB调试工具

调试步骤

  1. 编译的时候加参数
gcc -g error.c -o error
  1. 设置断点
b main
b 行号

3.gdb加可执行文件名字

gdb error
  1. 运行
r 运行

其他参数

n(next)		不进入子函数
s(step)		进入子函数
p(printf) a(要打印的值)		打印出来某一个指定值
c(continue)		可以直接跳出循坏,进入下一步
q(quit)		退出

GDB调试详解

相关文章:

Linux简单介绍

Linux简单介绍 编译器VMware虚拟机Ubuntu——LinuxOS为什么使用LinuxOS? 目录结构Windows目录结构Linux操作系统home是不是家目录? Linux常用命令终端命令行提示符与权限切换命令tab 作用:自动补全上下箭头pwd命令ls命令mkdir命令touch命令rm…...

Servlet 的基本理解

Servlet 是JavaEE规范的一种,主要是为了扩展Java作为Web服务的功能,统一接口。由其他内部厂商如tomcat,jetty内部实现web的功能。如一个http请求到来:容器将请求封装为servlet中的HttpServletRequest对象,调用init()&a…...

JavaScript之applye、bind和call方法详解

Question Q1 apply()、bind()和call()方法的区别在哪? Q2 apply()和call()的应用场景 Q3 apply()、bind()和call()方法手写实现逻辑 来源 继承自Function.prototype,属于实例方法 console.log(Function.prototype.hasOwnProperty(call)) //trueconsole.l…...

Docker,anaconda环境的部署与迁移

功能上线将提上日程,但是如何将我windows环境下的程序放到linux服务器的测试环境跑通呢?这是我这整个清明假期将要解决的一件事,最蠢的办法就是看自己的环境下有哪些依赖,如何到服务器上一个一个下,但是首先这个方法很…...

【大数据运维】Hbase shell 常见操作

文章目录 一. DDL1. 表的DDL1.1. 创建表1.2. 删除表 2. 列族的DDL2.1. 增加一个列簇2.2. 删除列族2.3. 修改列族版本(ing) 二. DML1. 插入与更新数据2. 删除数据3. 清空表 三. DQL1. scan:查一批数据1.1. 查询全部1.2. 过滤rowkey1.3. 过滤列…...

LeetCode-217存在重复的元素

217 存在重复的元素 给定一个整数数组,判断是否存在重复元素。 如果存在一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。 JavaScript的 Array 对象是用于构造数组的全局对象,数组是类似…...

基于两个单片机串行通信的电子密码锁设计

1.功能 电子号码锁在实际应用中应该有两部分,一部分在外部,有键盘部分和密码显示;另一部分内部,设置密码、显示密码。使用单片机自身带有的串口可以很方便的实现单片机之间的通信,使输入的密码值传送到主机检验是否是…...

产品经理功法修炼(3)之产品设计

点击下载《产品经理功法修炼(3)之产品设计》 1. 前言 产品经理的能力修炼并非局限于某一技能的速成,而是需要全面参与到产品的整个生命周期中,通过不断的实践来逐步提升自己的各项能力。尽管在企业的日常运作中,我们不可能身兼数职去扮演每一个角色,但作为产品的核心负…...

Qt 的发展历史、现状与启示

Qt 最早在1991年由挪威的两位程序员 Eirik Chambe-Eng 和 Haavard Nord 开发,他们在1994年创立 Trolltech 公司(奇趣科技)正式经营软件业务。Qt 的第一个公众预览版于1995年面世,之后在2008年被诺基亚收购;2011年到201…...

Quiet-STaR:让语言模型在“说话”前思考

大型语言模型(llm)已经变得越来越复杂,能够根据各种提示和问题生成人类质量的文本。但是他们的推理能力让仍然是个问题,与人类不同LLM经常在推理中涉及的隐含步骤中挣扎,这回导致输出可能在事实上不正确或缺乏逻辑。 考虑以下场景:正在阅读一…...

【Kotlin】匿名类和伴生类

1 匿名类 1)无继承 fun main() {var obj object {var name: String "zhang"override fun toString(): String {return name}}println(obj) // zhang } 2)有继承 fun main() {var obj object: People {var name: String "zhang"…...

【机器学习算法介绍】(3)决策树

决策树是一种常见的机器学习算法,用于分类和回归任务。它模拟了人类决策过程,通过一系列的问题来引导决策。决策树的构建涉及三个主要步骤:特征选择、树的构建和树的剪枝。 1. 特征选择 特征选择是决策树构建过程中的第一步,目的…...

算法之查找

1、顺序查找: package com.arithmetic.search; //顺序查找 //sequentialSearch 方法接收一个整数数组和一个目标元素作为参数,并使用顺序查找的方式在数组中查找目标元素。 //它通过循环遍历数组元素,逐个与目标元素比较,如果找到…...

LInux脚本学习

1.注释 #单行注释 以 # 字符开头就是单行注释 当然第一行除外,比较特殊 2.多行注释 3.Shell文件的作用 Shell文件就是linux命令集 4.sh脚本的执行方式 bash xxx.sh 5.新建的文件会没有执行权限 #为文件赋予执行权限 chmod ux xxx.sh 6.编写规范 #!/bin/bash #…...

JavaWeb基础(计网 socket 数据库 JDBC lombok Mybatis JUnit Maven)

本文用于检验学习效果,忘记知识就去文末的链接复习 1. 网络基础 1.1 计网基础 区分设备:IP地址 区分网络:网络地址 网络互联:路由器 主机上进程间通信:端口 http是常用的协议,基于TCP协议 TCP VS U…...

【HBase】

什么是HBase HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统;Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用Hadoop MapReduce来处理HBase中的海量数据。 访问层次(数据…...

Vue3:使用Pinia存储、读取、修改数据

一、存储数据 Pinia插件中,存储数据的配置项是state count.ts import {defineStore} from piniaexport const useCountStore defineStore(count,{// 真正存储数据的地方state(){return {sum:6}} })loveTalk.ts import {defineStore} from piniaexport const use…...

基于 Quartz.NET 可视化任务调度平台 QuartzUI

一、简介 QuartzUI 是基于 Quartz.NET3.0 的定时任务 Web 可视化管理,Docker 打包开箱即用、内置 SQLite 持久化、语言无关、业务代码零污染、支持 RESTful 风格接口、傻瓜式配置、异常请求邮件通知等。 二、部署 QuartzUI 从 2022 年到现在没有提交记录&#xf…...

前端三剑客 —— CSS (第三节)

目录 上节回顾: 1.CSS使用有以下几种样式; 2.选择器 1.基本选择器 2.包含选择器 3.属性选择器 [] 4.伪类选择器 : 5.伪元素选择器 ::before :after 3.常见样式的使用 常见样式参考表 一些特殊样式 媒体查询 自定义字体 变换效果 translate&…...

C# 系统学习(异步编程)

在C#中,异步编程是一种优化程序性能的关键技术,特别是在处理I/O密集型操作(如网络请求、数据库查询、文件读写等)时,能够有效避免由于长时间等待而导致的线程阻塞,从而提高应用的响应速度和资源利用率。asy…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

python如何将word的doc另存为docx

将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...

LLM基础1_语言模型如何处理文本

基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

浅谈不同二分算法的查找情况

二分算法原理比较简单,但是实际的算法模板却有很多,这一切都源于二分查找问题中的复杂情况和二分算法的边界处理,以下是博主对一些二分算法查找的情况分析。 需要说明的是,以下二分算法都是基于有序序列为升序有序的情况&#xf…...

精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南

精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...

【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论

路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中(图1): mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...