scoop退回软件版本的方法
前言在软件更新后,如果出现了很影响使用体验的问题,那么可以把软件先退回以前的版本进行使用,
但是scoop本身并没有提供直接让软件回退版本的功能,因此这篇文章我教大家如何做到回退软件版本
具体方法scoop安装软件是通过bucket中的json文件实现的,它的路径是 scoop\buckets\main\bucket,这个文件夹包含了当前软件库中的所有软件的描述信息(感兴趣有啥内容可以自己打开来看)
然后每个软件库都是一个git仓库,所以我们可以用git操作来使得软件库退回到特定的版本
我们拿extras仓库举例(路径是scoop\buckets\extras),通过git仓库找到vscode的旧版本
首先我们得找到特定版本的commit hash值,这个操作可以用git log -S"关键词"实现所以我们可以通过命令行在软件库使用git log -S"vscode"查找到与vscode有关的提交信息当然,如果你有会使用的git图形化工具,那也是可以的
123456789commit fb6af57934c019ca66e4126be7cc44b ...
正则表达式快速入门
前言我写这篇文章,用来记录我平时使用正则表达式的方法,这样我在分享知识给大家的同时,也复习了一遍正则表达式。在你学习某个知识的时候,千万不要去像阅读手册一般去进行学习,因为手册的内容虽然非常详细且全面,但是其实你实际运用到的内容并不会很多,这个就是二八定律,正则表达式20%的内容,就足以够覆盖80%的使用场景了
什么是正则表达式正则表达式的定义如下
正则表达式是一组由字母和符号组成的特殊文本, 它可以用来从文本中找出满足你想要的格式的句子.
首先,你难道不觉得 “正则表达式” 这个名字莫名奇妙,难以理解吗?正则表达式的英文原文是 “Regular expression”(简称 regex 或 regexp)) 其中把regular换一个翻译——规则的,有规律的,所以Regular expression的意思就是有规则的表达式。怎么样?是不是比啥正则表达式好懂多了。
正则表达式的作用正则表达式的作用,用一句话概括就是——精确匹配,比如
文本搜索和替换
表单验证(如邮箱、手机号验证)
数据提取
字符串解析
当你注册一个网站,一般都会对你的密码强度进行验证,或者强制要求你必须满足某种 ...
垃圾代码编写指南_C语言版
前言作为一名程序员,通常都需要跟别人协作编写代码。https://github.com/trekhleb/state-of-the-art-shitcode 是一个教你如何编写 💩 代码的教程,但是这个教程的代码示例是用 JavaScript 编写的,在本文我将其转成了经典的C语言,并且将一些语言风格写成符合中国程序员的编码习惯
代码编写原则💩 定义变量的时候,尽可能用混淆的方式变量命名的时候尽可能写短,能节省敲代码的时间
正确做法 👍🏻
1int a = 42;
错误做法 👎🏻
1int age = 42;
💩 采用变量/函数的混合命名风格命名风格要采取多样化,彰显个人魅力
正确做法 👍🏻
12int wWidth = 640;int w_height = 480;
错误做法 👎🏻
12int windowWidth = 640;int windowHeight = 480;
💩 永远不要写注释程序员最讨厌的两件事是:
别人的代码不写注释
别人让自己给代码写注释
正确做法 👍🏻
1const int cdr = 700;
错误做法 ...
Linux软连接与硬链接
前言接触过文件系统和Linux的人,或多或少都会听说过硬链接和软链接这两个概念,我刚开始学习Linux的时候,其实我认为这两个东西没啥区别,但是在深入接触了文件系统后,我改变了自己的看法,这篇文章就让我分享一下自己的见解吧😋
1. inode —— 文件的“身份证”在说明硬链接和软链接之前,inode(index node)——索引结点,这个概念你必须了解,理解了inode,你才能懂硬链接和软链接的区别了。
1.1 什么是 inode?每个文件在创建时,文件系统会分配一个唯一的 inode 号(你可以理解为是文件的专属身份证号,它是唯一的)。它不存储文件名或内容,而是记录文件的元信息:
文件类型(普通文件、目录、符号链接等)
权限(读/写/执行)
所有者(用户和组)
时间戳(创建、修改、访问时间)
文件大小
数据块的物理位置(指向存储内容的磁盘位置)
硬链接计数(有多少个文件名指向该 inode)
当用户每当请求文件时(必须进行打开,删除,创建这些操作),其文件名都会首先解析为一个inode号。有了inode号之后,文件系统便会 ...
《微型计算机技术与应用》期末考试题库简答题答案
前言答案制作方法参考这个文章
搭建RAG问答系统
其他题库
选择题题库 (答案)
填空题题库 (答案)
第1章 微型计算机概述
微处理器、微型计算机和微型计算机系统三者之间有什么不同?答案:微处理器是中央处理单元(CPU),负责执行指令和处理数据。微型计算机是由微处理器、存储器和输入输出接口组成的计算机。微型计算机系统则包括微型计算机及其外围设备,如显示器、键盘、鼠标等,以及操作系统和其他软件。
第2章 16位和32位微处理器
8086基本总线周期是如何组成的?各状态中完成什么基本操作?答案:8086的基本总线周期通常由四个状态组成:T1、T2、T3和T4。在T1状态,8086发送地址信息到地址总线,并激活ALE(地址锁存允许)信号。在T2状态,8086释放地址总线,准备数据传输,并激活相应的控制信号。在T3状态,数据在总线上传输。在T4状态,总线周期结束,8086准备开始下一个总线周期。
结合8086最小模式下总线操作时序图,说明ALE、M/IO#、DT/R#、RD#、READY信号的功能。答案:ALE(地址锁存允许)信号用于锁存地址信息。M/ ...
《微型计算机技术与应用》期末考试题库填空题答案
前言答案制作方法参考这个文章
搭建RAG问答系统
其他题库
选择题题库 (答案)
简答题题库 (答案)
第1章 微型计算机概述
微型计算机中各部件是通过 总线 构成一个整体的。
解析:总线是计算机中用于传输数据、地址和控制信号的公共通道,它将微型计算机的各个部件连接在一起,使它们能够相互通信和协调工作。
答案:总线
CPU 是微型计算机的核心。
解析:CPU(中央处理器)是计算机的运算和控制核心,负责执行指令、处理数据和控制其他部件的操作。
答案:CPU
和CPU相连的系统总线按功能可分为 数据总线、地址总线 和 控制总线。
解析:数据总线用于传输数据,地址总线用于传输内存地址,控制总线用于传输控制信号,这三类总线共同构成了系统总线,支持CPU与外部设备的通信。
答案:数据总线、地址总线、控制总线
微型计算机由 CPU、存储器、输入设备 和 输出设备 组成。
解析:CPU负责处理数据,存储器用于存储数据和程序,输入设备用于输入数据,输出设备用于输出结果,这四个部分是微型计算机的基本组成部分。
答案:CPU、存储器、输入设备、输出设备
以微型计算机为主体,配上 外围设备、系 ...
《微型计算机技术与应用》期末考试题库选择题答案
前言答案制作方法参考这个文章
搭建RAG问答系统
其他题库
简答题题库 (答案)
填空题题库 (答案)
第1章 微型计算机概述
微型计算机的硬件系统包括________。A.控制器、运算器、存储器和输入输出设备B.控制器、主机、键盘和显示器C.主机、电源、CPU和输入输出D.CPU、键盘、显示器和打印机解析:微型计算机的硬件系统主要包括控制器、运算器、存储器和输入输出设备。这些组件共同工作,使得计算机能够执行各种任务。选项A正确地列出了这些主要组件。答案:A
微处理器内部的控制器是由________组成。A.寄存器阵列B.指令寄存器、指令译码器C.ALU与内存D.ALU与寄存器解析:微处理器内部的控制器主要由指令寄存器和指令译码器组成。指令寄存器用于存储当前正在执行的指令,而指令译码器则负责将这些指令翻译成控制信号,以指导其他部件的操作。答案:B
若把组成计算机中的运算器和控制器集成在一块芯片上成为_____。A.微型计算机B.单片机C.微处理器D.单板机解析:将运算器和控制器集成在一块芯片上,这种芯片被称为微处理器。微处理器是现代计算机系统的核心部件,负责执行各种计算和控制任务 ...
如何利用RAG+LLM技术拯救自己的期末考试
前言博主最近正在为了微机和计算机操作系统的期末考试而忙碌中(毕竟还在读大学😭),操作系统的复习资料和复习重点都给的很全,所以我复习起来还是相当顺利的。但是,诶🤓!,接下来我要重点“表扬”一下微机这门课的各种神奇操作
给了题库,但是没有答案,更没解析
PS:这个题库有好几万字😅2. 抽象的书籍
这本书谁看谁知道,这么抽象的书,能学明白的是这个👍,而且知识点还多,想要短时间内复习完,那是相当困难的。
所以我找到了一种利用RAG技术+LLM(大语言模型,比较有名的是ChatGPT)搭建出问答系统,让这个问答系统来帮我做题和复习的方法。
仅以此文章记录这一流程,文中用到的技术可能会过时,这个可以寻找一下平替,但是解决问题的思路是不会过时的
效果展示我向来喜欢先展示出效果,因为这样读者才能快速地知道,接下来的一系列操作所耗费的精力是否值得😋
这个是问题目怎么做
如果你直接找一个LLM问某个领域很高深且具体的题目的话,会有非常高的概率出现大模型幻觉,所谓的幻觉,其实就是“说胡话”,LLM看似回答了你很多内容,但是当你仔细看看可能会发现,他就是在胡扯,完全不清楚他回答的根 ...
解决Vscode中使用netdb.h的getaddrinfo和addrinfo会报错的方法
前言博主最近在学习c语言的socket编程,在调用netdb.h中的相关函数和变量api时,遇到了一些问题,因此本文将给出解决的方法,并且进行分析
博主的配置
wsl:ubuntu20.04发行版
vscode:1.95.3
问题的描述使用addrinfo(属于netdb.h头文件)结构体变量的时候,vscode会报错
调用getaddrinfo()函数的时候,vscode也索引不到这个函数的定义
其实这个函数就位于netdb.h中,可以看到,这一部分是灰色的
但是使用gcc编译的时候,是能够正确编译链接的,说明程序是没有语法和语义错误的
因此我推测是vscode的c语言扩展的intellisense智能提示的问题,就是下图的这个扩展(不得不说微软的东西,屁事就是多😅)
解决的方法我查阅了很多资料,最终也是找到了解决的方法。我的风格就是先告诉你怎么做,解决你的燃眉之急,至于为什么要这么做,之后我再娓娓道来😋所以如果你对原因分析不感兴趣的话,后面的分析和总结你可以跳过不看❤️
方法1:在插件设置中更改c standard进入c/c++插件的设置中,找到这一栏
...
在VMware配置Ubuntu20.04静态ip的方法
前言本文适用于在Windows下配置VMware虚拟机NAT模式下的静态ip,如果你与我使用的软件版本不一样的话,那么配置操作仅供参考
软件版本
ubuntu20.04
VMware17
Just do it!打开window的网络适配器更改的选项,不同window版本的入口会有所差异,所以请自行寻找。VMware会创建多个虚拟网卡VMnet,命名如下图所示,每台电脑的虚拟网络命名都可能不同,这里我们选择VMnet8,这里记住这个网络的名字,后面要考😋
点击属性
找到ipv4这一栏,点进去,修改ip
因为下面的内容都会涉及到计算机网络的知识,因此如果你没学过计算机网络的话,别想太多,做就完事了。
说明
IP地址你只能设置为三大私有地址段(不做阐述),这里推荐使用192.168.1xxx.2xxx这个私有地址
1xxx可以随便填从0~255任意值,我下面填了235
2xxx一般要用来标识子网地址,所以最好填0或者1
C类地址的网络号是24位,因此子网掩码固定填写255.255.255.0
默认网关要跟ip地址在同一个子网,别跟ip地址重复就行
DNS不要填,让他自动配置
修改 ...