Linux复习-安装与熟悉环境(一)
这里写目录标题
- 虚拟机
- ubuntu系统
- 配置镜像
- Linux命令
- vi编辑器
- 3个模式
- 光标命令
- vi模式切换命令
- vi拷贝与粘贴命令
- vi保存和退出命令
- vi的查找命令
- vi替换命令
- 末行模式
- 复制、粘贴、剪切
- gcc编译器
虚拟机
VMware16
官网下载:vmware官网
网盘下载:
链接: https://pan.baidu.com/s/1-vWg9VwiHmVXmiQ0IKge1g?pwd=g4jx
提取码:g4jx
ubuntu系统
ubuntu18. 04
官网下载:https://www.ubuntu.org.cn/global
网盘下载:
ubuntu18. 04 链接:https://pan.baidu.com/s/1qy5b6hAGgsi2y99u8ZfYRQ?pwd=7tjg
提取码:7tjg
配置镜像
使用国外镜像,在ubuntu上安装软件经常会下载和安装失败,这时可以配置国内镜像文件,提升网速。
首先打开终端,使用vi编辑器打开软件源配置文件:
sudo vi /etc/apt/sources.list
选择合适的镜像源:根据你的地理位置或个人偏好,选择一个合适的镜像源。下面是一些常见的Ubuntu镜像源:
阿里云镜像源:将以下镜像源配置添加到文件中:
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
清华大学镜像源:将以下镜像源配置添加到文件中:
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
中国科学技术大学镜像源:将以下镜像源配置添加到文件中:
deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
按:wq保存退出vi编辑器
执行以下命令以更新软件包列表并使用新的镜像源:
sudo apt update
Linux命令
参考这篇文章:Linux 命令大全(看这一篇就足够)
vi编辑器
3个模式
光标命令
vi模式切换命令
| 命令 | 功能 |
|---|---|
| A a | (Append)进入编辑状态,从当前光标之后的位置开始插入键盘输入的字符 |
| I i | (Insert)进入编辑状态,从当前光标之后的位置开始插入键盘输入的字符 |
| O o | (Open)进入编辑状态,并插入一新行,光标移到该新行的行首,以后键盘输入的字符将插入到光标位置 |
| :! Command | 在vi中执行外部命令Command,按回车键可以返回vi继续工作 |
| ESC | 进入命令状态 |
vi拷贝与粘贴命令
| 命令 | 功能 |
|---|---|
| [N]x | (Expurgate)删除从光标位置开始的连续N个字符(并复制到编辑缓冲区) |
| [N]dd | (Delete)删除从光标位置开始的连续N行(并复制到编辑缓冲区) |
| [N]yy | (Yank)复制从光标位置开始的连续N行到编辑缓冲区 |
| p或P | (Put)从编辑缓冲区复制文本到当前光标位置(即粘贴) |
| u | (Undo)取消上一次操作(即恢复功能) |
vi保存和退出命令
| 命令 | 功能 |
|---|---|
| :q | (Quit)退出没有修改的文件(若文件被修改了而没有保存,则此命令无效) |
| :q! | 强制退出,且不保存修改过的部分 |
| :w | (Write)保存文件,但不退出 |
| :x | (Exit)保存文件并退出 |
| :w File | 另存为File给出的文件名,不退出 |
| :r File | (Read)读入File指定的文件内容插入到光标位置 |

vi的查找命令
/string 查找字符串
- n 继续查找
- N 反向继续查找
- 支持正则表达式比如:/^the /end$
vi替换命令
利用:s 命令可以实现字符串的替换。
- : s/str1/str2/
- : s/str1/str2/g
- :.,$ s/str1/str2/g g全部替换(默认换第1个)
- :1,$ s/str1/str2/g
- :%s/str1/str2/g
常用快捷键但不限于剪切板
多按几遍ESC进入命令模式
末行模式
在末行模式下
| 命令 | 功能 |
|---|---|
| x | 剪切当前字符 |
| :set nu(set number) | 显示行号 |
| :set nonu | 取消显示行号 |
| ②显示忽略或区分字符大小写 | |
| set ic (set ignorecase) | 忽略大小写 |
| set noignorecase | 区分大小写 |
| ③设定自动缩进 | |
| set ai(set autoindent):自动缩进 | |
| set noai:取消自动缩进 | |
| ④查找到的文本高亮或取消高亮显示 | |
| set hlsearch:高亮显示搜索到的文本 | |
| set nohlsearch:取消高亮显示搜索到的文本 | |
| ⑤语法高亮 | |
| syntax on:打开语法高亮显示 | |
| syntax off | 关闭语法高亮显示 |
| 命令 | 功能 |
|---|---|
| x | 剪切当前字符 |
| 7x | 剪切从当前位置起7个字符大写的X,表示从前面一个字符开始往前计算 |
| dd | 剪切光标所在行。 |
| 7dd | 从光标所在行开始剪切7行 |
| d7G | 删除光标所在到第7行的所有数据 |
| yw | 复制当前单词 |
| 7yw | 复制从当前位置起7个单词 |
| yy | 复制当前行 |
| 6yy | 从当前行起向下复制6行 |
| y7G | 复制游标所在列到第7列的所有数据 |
| p | 粘贴 |
| u | 撤销 |
| ctrl+r | 取消撤销 |
| cw | 删除当前单词(从光标位置开始计算),并进入插入模式 |
| c7w | 删除7个单词并进入插入模式 |
新建一个c文件
vi hello.c
显示行号
:set nu
也可以在终端模式下显示行号
vi ~/.vimrc
新增一行命令
:set number
;wq保存退出
在hello.c文件编写以下代码:
#include <stdio.h>int main(void){printf("hello world");return 0;}
如果左下角没有显示当前操作,执行下面语句
sudo gedit /etc/vim/vimrc.tiny
输入密码
将set compatible 设置成set nocompatible
然后保存。
复制、粘贴、剪切
gcc编译器
1.安装
sudo apt install gcc
查看版本
gcc -v
2.编译hello.c

相关文章:
Linux复习-安装与熟悉环境(一)
这里写目录标题 虚拟机ubuntu系统配置镜像Linux命令vi编辑器3个模式光标命令vi模式切换命令vi拷贝与粘贴命令vi保存和退出命令vi的查找命令vi替换命令 末行模式复制、粘贴、剪切gcc编译器 虚拟机 VMware16 官网下载:vmware官网 网盘下载: 链接ÿ…...
Go基础语法:map
9 map Go 语言中提供的映射关系容器为 map ,其内部使用 散列表(hash) 实现。它是一种无序的基于 key-value 的数据结构。 Go 语言中的 map 是引用类型,必须初始化之后才能使用。 9.1 map 定义 Go 语言中 map 的定义语法为&…...
开发板TFTP调试
问题描述 开发板和host(此处指虚拟机linux)可以平通,但是通过uboot tftp下载请求时一直显示T T T, 即超时 使用wireshark抓包也显示超时 措施 关闭windows和linux的防火墙 重新进行下载成功...
MySQL---优化日志
目录 一、MySQL优化 3、mysql server上的优化 3.1、MySQL查询缓存 3.2、索引和数据缓存 3.2、线程缓存 二、MySQL日志 2.1、redo log 重做日志 2.2、undo log 回滚日志 2.3、错误日志 2.4、查询日志 2.5、二进制日志 2.5.1、基于binlog数据恢复实践操作 六、慢查…...
【送面试题】深入解析Cookie和Session的请求区别及使用场景
AI绘画关于SD,MJ,GPT,SDXL百科全书 面试题分享点我直达 2023Python面试题 2023最新面试合集链接 2023大厂面试题PDF 面试题PDF版本 java、python面试题 项目实战:AI文本 OCR识别最佳实践 AI Gamma一键生成PPT工具直达链接 玩转cloud Studio 在线编码神器 玩转 GPU AI…...
010_第一代软件开发(二)
第一代软件开发(二) 文章目录 第一代软件开发(二)项目介绍界面布局功能完善快照功能获取可用串口播放按键提示音 关键字: Qt、 Qml、 QSerialPort、 QPixmap、 QSoundEffect 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QMLÿ…...
基于若依ruoyi-nbcio增加flowable流程待办消息的提醒,并提供右上角的红字数字提醒(四)
更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 上一节说到待办系统的监听器TaskCreateListener,需要在flowable全局监听配置里加入配置 1、Glo…...
RestTemplate:简化HTTP请求的强大工具
文章目录 什么是RestTemplateRestTemplate的作用代码示例 RestTemplate与HttpClient 什么是RestTemplate RestTemplate是一个在Java应用程序中发送RESTful HTTP请求的强大工具。本文将介绍RestTemplate的定义、作用以及与HttpClient的对比,以帮助读者更好地理解和使…...
【数据结构】什么是数据结构?
数据结构(Data Structure)是计算机存储,组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合. 这么讲可能有些抽象,放一张图大家可能好理解一点: 上图依次是数据结构中逻辑结构中的:集合结构,线性结构,树形结构,图形结构. 而: 数据结构是一门研究非数值计算的程…...
c++源码编译过程(翻译阶段)的若干细节概要
c程序的编译主要包含两个阶段:源码编译(翻译阶段)和目标文件链接。 源码编译过程主要有如下这些阶段: 阶段1: 翻译源码文本字符 阶段2: 逻辑源码行标准化处理 阶段3: 文法处理,分解为不同的源码文本类型序列。例如分解为注释、预处理指…...
Go内置函数make和new的区别?
首先纠正一下make 和 new 是内置函数,不是关键字。 变量初始化,一般分为2步,变量声明变量内存分配,var 关键字就是用来声明变量的,new和make 函数主要是用来分配内存的。 var 声明值类型的变量时,系统会默…...
动手学深度学习(pytorch版)第二章-2.3线性代数Note-linear-algebra
类型 标量:仅包含一个数值被称为标量 向量:向量可以被视为标量值组成的列表 矩阵:正如向量将标量从零阶推广到一阶,矩阵将向量从一阶推广到二阶。 A torch.arange(20).reshape(5, 4) A.T //转置 张量:是描述具有…...
Docker CMD指令如何覆写
在Dockerfile里,CMD指令是可以被覆盖的。 在构建镜像时,可以通过docker build命令的–cmd选项覆盖Dockerfile的CMD: 例如: FROM ubuntu CMD ["echo","hello"]构建时覆盖CMD: docker build -t test --cmd "echo world" .在创建容器时,可以通过…...
动手吧,vue单独使用的复选框
单独使用的复选框可以用在两个状态之间的切换,如是否阅读协议、记住账号等场景。 效果: 1、template部分 <template><label class"v-checkbox-single"><span class"v-checkbox_input" :class"{ disabled }&qu…...
升级iOS17后可以降级吗?iOS17退回iOS16方法教程分享
iOS 17已上线几天,从网上用户的反馈和媒体机构的报告来看,iOS17系统对旧机型来说并不友好,除了电池续航下降以外,占用大量储存空间,BUG也不少。 苹果于 9 月 7 日发布了 iOS 16.6.1 版本,如果升级iOS17后发…...
基于STM32和LORA组网的养老院智能控制系统设计(第十八届研电赛)
一、整体功能 数据采集从机1采集烟雾浓度,PM2.5浓度,甲醛浓度;从机2采集温湿度,光照强度,噪声强度,老人体感温度;从机3收集厨房饮用水的TDS值。3个数据采集从机将采集到的数据显示在本地OLED屏…...
关于Qt适配不同分辨率和缩放率时可能遇到的问题和解决方案
如果没有特殊的处理,Qt的UI窗口在不同的分辨率和缩放率下,其显示效果可能会出现问题,常见的有: 子控件堆叠,无法显示完整 窗口尺寸变大,超出屏幕的显示范围 控件变形,长宽比不合理 界面模糊 …...
第1篇 目标检测概述 —(1)目标检测基础知识
前言:Hello大家好,我是小哥谈。目标检测是计算机视觉领域中的一项任务,旨在自动识别和定位图像或视频中的特定目标,目标可以是人、车辆、动物、物体等。目标检测的目标是从输入图像中确定目标的位置,并使用边界框将其标…...
Discuz论坛网站标题栏Powered by Discuz!版权信息如何去除或是修改?
当我们搭建好DZ论坛网站后,为了美化网站,想把标题栏的Powered by Discuz!去除或是修改,应该如何操作呢?今天飞飞和你分享,在操作前务必把网站源码和数据库都备份到本地或是网盘。 Discuz的版权信息存在两处…...
springboot整合aop,实现日志操作
前言: 整合之前,我们要明白aop是什么,为什么要用aop,aop能帮我们做什么。 答:AOP是面向切面编程(Aspect-Oriented Programming)的简称,它是一种编程思想,旨在在面向对象…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...
React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...
C++ 设计模式 《小明的奶茶加料风波》
👨🎓 模式名称:装饰器模式(Decorator Pattern) 👦 小明最近上线了校园奶茶配送功能,业务火爆,大家都在加料: 有的同学要加波霸 🟤,有的要加椰果…...
Linux系统部署KES
1、安装准备 1.版本说明V008R006C009B0014 V008:是version产品的大版本。 R006:是release产品特性版本。 C009:是通用版 B0014:是build开发过程中的构建版本2.硬件要求 #安全版和企业版 内存:1GB 以上 硬盘…...
Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践
前言:本文将向开发者介绍一款创新性协作工具——Neko虚拟浏览器。在数字化协作场景中,跨地域的团队常需面对实时共享屏幕、协同编辑文档等需求。通过本指南,你将掌握在Ubuntu系统中使用容器化技术部署该工具的具体方案,并结合内网…...
如何在Windows本机安装Python并确保与Python.NET兼容
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
DeepSeek越强,Kimi越慌?
被DeepSeek吊打的Kimi,还有多少人在用? 去年,月之暗面创始人杨植麟别提有多风光了。90后清华学霸,国产大模型六小虎之一,手握十几亿美金的融资。旗下的AI助手Kimi烧钱如流水,单月光是投流就花费2个亿。 疯…...
