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 文件名
查看较长文档:
- 按space(空格)向下走一页
- 按b向上走一页
- 按enter(回车)向下走一行
- 按q退出
关机重启
sudo reboot //重启
sudo shutdown -h +30 //30分钟之后关机
sudo shutdown -h now //现在关机
Vim编辑器
vim 文件名
(如果文件存在,就进入文件并进行编辑,如果不存在,则创建文件并进入编辑)
编辑器存在的三种模式:
- 命令行模式(默认)
- 插入模式
- 底行模式
三种模式如何转换?
命令行模式——>插入模式 (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调试工具
调试步骤
- 编译的时候加参数
gcc -g error.c -o error
- 设置断点
b main
b 行号
3.gdb加可执行文件名字
gdb error
- 运行
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 年到现在没有提交记录…...
前端三剑客 —— CSS (第三节)
目录 上节回顾: 1.CSS使用有以下几种样式; 2.选择器 1.基本选择器 2.包含选择器 3.属性选择器 [] 4.伪类选择器 : 5.伪元素选择器 ::before :after 3.常见样式的使用 常见样式参考表 一些特殊样式 媒体查询 自定义字体 变换效果 translate&…...
C# 系统学习(异步编程)
在C#中,异步编程是一种优化程序性能的关键技术,特别是在处理I/O密集型操作(如网络请求、数据库查询、文件读写等)时,能够有效避免由于长时间等待而导致的线程阻塞,从而提高应用的响应速度和资源利用率。asy…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
P3 QT项目----记事本(3.8)
3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...
