- 博客(67)
- 收藏
- 关注
原创 GitLab的使用
GitLab是一个基于Git的开源代码仓库管理工具,提供了代码托管、持续集成、持续部署、问题跟踪、代码审查等功能,广泛应用于软件开发的各个阶段。GitLab的核心是代码库,开发者可以在其中托管和管理项目代码。它还提供了问题跟踪功能,用于记录和管理项目中的任务、缺陷和改进需求。此外,GitLab通过合并请求功能,允许开发者将分支上的代码合并到主干分支,通常伴随着代码审查和测试过程。代码托管:作为一个管理Git存储库的平台,GitLab可以免费托管私有和公共的软件项目。项目管理。
2024-11-28 15:32:36
1530
原创 CentOS7如何yum install java后如何恢复到原来没有安装java的状态
如果命令未找到(command not found),则说明系统中没有安装Java。如果系统返回“command not found”,则说明Java已被成功卸载。文件并删除与Java相关的行。卸载完Java包后,系统中可能还残留一些配置文件和目录。有时候,系统中可能还残留一些与Java相关的依赖项。来查找系统中所有与Java相关的包。按照这些步骤,你应该能够将CentOS 7系统恢复到未安装Java的状态。对于其他Java相关包,重复上述命令进行卸载。这个命令会卸载所有包含“java”关键词的包。
2024-11-28 08:39:36
442
原创 Jenkins的使用
SonarQube通过对代码库进行静态代码分析来评估代码质量。它支持多种编程语言,并且可以集成到开发流程中,帮助开发团队提高代码质量、减少技术债务,并及早发现潜在的代码问题。在文件中定义构建和部署的步骤。stages:- build- deploybuild_job:script:- ./gradlew build # 假设您使用Gradle作为构建工具script:only:- master # 只在master分支上部署。
2024-11-27 21:34:16
5340
1
原创 程序的前后台放置运行
请注意,将后台作业带到前台后,您将能够看到程序的实时输出,并且能够与程序进行交互。如果您需要让程序再次进入后台运行,可以按下。这个命令会将最近的一个后台作业(job)带到前台来继续运行。如果您想将作业放到前台并保留作业编号,可以使用。要将后台运行的程序放到前台运行,您可以使用。这个命令正在后台运行,并且有一个作业编号。如果您只有一个后台作业,直接使用。键,作业就会被带到前台继续运行。指的是作业编号为1的后台作业。命令将其放到后台继续运行。命令不带任何参数也可以。加作业编号的方式,如。执行上述命令后,按下。
2024-11-25 17:56:41
206
原创 Git的使用_仓库管理_CI/CD介绍
Git 是一个用于管理源代码的分布式版本控制系统。版本控制系统会在您修改文件时记录并保存更改,使您可以随时恢复以前的工作版本。跟踪代码历史记录以团队形式协作编写代码查看谁做了哪些更改初始化 vs. 复制git init用于在本地初始化一个新的 Git 仓库,而git clone用于从远程仓库复制一个完整的仓库到本地。内容git init不包含任何项目文件,而git clone包含远程仓库的所有文件和历史。远程引用git clone自动设置远程引用,而git init。
2024-11-24 02:30:09
1159
原创 ELK-Kibana配置
Kibana是一个开源的分析与可视化平台,设计出来用于和Elasticsearch一起使用的。它允许用户通过Elasticsearch轻松地探索和分析数据,使用图表、表格及地图对数据进行多元化的分析和呈现。数据可视化:Kibana提供了多种图表、表格、地图等工具,帮助用户实时展示自己的数据。数据探索:用户可以利用Kibana搜索、查看存放在Elasticsearch中的数据。创建仪表板:Kibana允许用户创建动态数据仪表板来追踪Elasticsearch的实时数据变化。分享与协作。
2024-11-10 02:57:12
1099
原创 ELK-Logstash配置
Logstash 是一个开源的服务器端数据处理管道,它能够同时从多个来源采集数据,转换数据,然后将数据发送到您指定的目的地。Logstash 是 Elastic Stack(以前称为 ELK Stack)的核心组件之一,与 Elasticsearch 和 Kibana 一起使用,用于构建强大的日志分析和数据可视化解决方案。这里的“数据处理管道”的意思:指的是该软件可以对数据进行采集、转换、处理等操作,将原始数据转换成有用的信息。管道是指数据从一个组件流向另一个组件的过程。
2024-11-10 02:54:45
1622
原创 ELK-ELK基本概念_ElasticSearch的配置
ELK是Elasticsearch、Logstash、Kibana三个开源框架首字母的缩写,它们共同构成了一个强大的日志分析和搜索平台。:一个基于Lucene的开源分布式搜索引擎,提供搜集、分析、存储数据功能。Logstash:一个日志搜集、分析、过滤的工具,支持大量数据获取方式,其自带输入(input)、过滤(filter)、输出(output)三部分。Kibana。
2024-11-06 11:47:40
1058
原创 Linux中sysctl、systemctl、systemd、init的区别
用于管理系统和服务。两者在Linux系统中扮演着不同的角色,服务于不同的管理需求。是现代Linux系统中的主流系统和服务管理器,它提供了比传统的。的命令行工具,使得管理系统和服务变得更加方便和高效。更多的功能和更好的性能。在Linux系统中,用于调整内核参数,而。在Linux系统中,
2024-11-05 07:44:10
1045
原创 “路由”的理解
在Web开发和网络应用的上下文中,“请求路由”(Request Routing)指的是在服务器端处理客户端请求时,根据请求的URL、HTTP方法(如GET、POST)、请求头等信息,将请求转发到相应的处理程序或服务的过程。:这是最常见的含义,指的是在计算机网络中,数据包从源头到目的地的路径选择和数据转发的过程。:在Web开发中,“路由”指的是Web服务器根据请求的URL和其他信息(如HTTP方法)将请求分发到不同的处理程序或服务的过程。:在网络中,路由指的是决定数据包从发送者到接收者的最佳路径的过程。
2024-11-04 08:48:45
335
原创 Redis- 内核的分配内存限制的警告“WARNING Memory overcommit must be enabled!”
如果这个参数被设置为0(默认值),内核会尝试预测应用程序的内存需求,并在分配内存时进行限制,以防止单个应用程序或进程使用过多的内存导致系统OOM(Out of Memory)。但是,这种预测并不总是准确的,可能会导致即使系统有足够的内存,应用程序也无法分配到足够的内存,特别是对于像Redis这样的内存密集型应用。这样做的前提是系统有足够的交换空间(swap),因为当物理内存不足时,Linux会使用交换空间。这个报错信息是Redis一些服务启动时的一个警告,它指出了操作系统内存管理配置的一个问题。
2024-11-01 17:25:22
1212
原创 Redis-“自动分片、一定程度的高可用性”(sharding水平拆分、failover故障转移)特性(Sentinel、Cluster)
sharding:水平拆分的支持replication:作为读写分离和故障转移的基础fail-detect:和replication配合,支撑故障转移cluster(all-in-one):独立完成上面三个的这样的完整的分布式解决方案Redis集群是一种Redis安装方式,提供数据在多个Redis节点间的自动分片和一定程度的高可用性。手动配置:通过配置文件和命令行工具手动设置集群。使用redis-trib.rb:一个Ruby脚本,用于创建和管理集群。
2024-11-01 12:45:33
992
1
原创 Redis-事务、锁
数据库中的锁和事务是两个重要的概念,它们都与数据的一致性、完整性和并发控制有关。下面我将详细解释它们之间的区别,并介绍Redis中的锁。"事务支持"是指Redis数据库提供了一种机制,允许用户将多个命令打包成一个事务执行。在Redis中,事务可以确保这些命令要么全部执行,要么全部不执行,从而保证了操作的原子性。MULTI:开始一个事务,将后续的命令放入事务队列中。EXEC:执行事务队列中的所有命令。DISCARD:取消当前事务,清空事务队列。WATCH。
2024-10-31 17:18:11
1329
1
原创 Redis-发布/订阅交互模式
消息代理”(Message Broker)是一种软件组件,它在不同的应用程序之间传递消息。在Redis的上下文中,消息代理的功能允许Redis作为一个中间人,帮助应用程序之间进行异步通信。具体来说,Redis支持发布/订阅(pub/sub)模式,这是一种消息传递机制,其中一个或多个发布者(publishers)发送消息到一个频道(channel),而订阅者(subscribers)监听这些频道以接收消息。
2024-10-31 14:53:53
474
原创 Redis-结构化value对象的类型
Redis常用的value包含5种类型:string、list、set、map、sorted-set//":4"表示占用4位void *ptr;} robj;type:指这些结构化类型encoding:指的是这些结构化类型在具体的实现(承载)方式,同一个类型可以有多种实现,例如String可以用int来承载,也可用用封装的char[]来承载,List可用ziplist或者链表来承载;lru:表示本对象的空转时长,用于有限内存下长久不访问的对象的清理;
2024-10-30 12:29:05
1071
原创 Redis-README官方入门文档
Redis OSS在7.4版本发布时更名为Redis社区版(CE)。Redis Ltd.还提供了Redis软件,这是一个自管理软件,为企业扩展提供了额外的合规性、可靠性和弹性,以及Redis云,这是一个与Google Cloud、Azure和AWS集成的完全托管服务,适用于生产就绪的应用程序。更多关于Redis社区版和Redis之间差异的信息,请点击这里。
2024-10-29 22:50:26
941
原创 Redis-主从复制
注:“Redis的主从复制中,应该禁止主服务器关闭持久化的同时自动拉起”中的自动拉起是什么意思?在Redis的主从复制配置中,“自动拉起”指的是当主服务器(Master)因为某些原因崩溃后,系统自动重启该主服务器的行为。在某些情况下,这种自动重启的行为可能会带来数据安全的风险,特别是在主服务器关闭了持久化功能的情况下。当主服务器关闭了持久化功能,意味着它不会定期将内存中的数据保存到磁盘上。如果主服务器崩溃,重启后的主服务器将没有任何数据,因为它没有持久化的数据可以恢复。
2024-10-29 22:09:49
768
原创 Redis-持久化(增量模式和全量模式)
持久化是指将数据从易失性存储(如内存)保存到非易失性存储(如硬盘)的过程。这样做的目的是为了在系统发生故障(如断电、崩溃等)后能够恢复数据。持久化是数据库系统中的一个关键特性,确保数据的持久性和一致性。在计算机科学中,持久化可以通过不同的方式实现,包括写前日志(WAL)、快照、复制等技术。Redis是一个基于内存的高性能键值对数据库,它提供了两种主要的持久化机制:RDB(Redis Database)和AOF(Append Only File)。
2024-10-29 16:46:04
1238
原创 Redis-概念、安装、基本配置
分布式系统是由多个独立的计算机组成的系统,这些计算机通过网络协同工作,给用户呈现一个统一的整体。分布性:系统的处理单元分布在不同的物理位置。自治性:每个节点可以独立进行数据处理和资源管理。并行性:任务可以分解成多个子任务并行处理。全局性:存在全局的进程通信机制和保护机制。分布式缓存是指在分布式环境下,将一些热门数据存储到离用户或应用更近的位置,以减少远程数据传输的延迟。Redis可以通过主从复制和分片来实现分布式缓存。
2024-10-28 18:15:22
1179
原创 正则表达式和通配符
正则表达式提供了一种非常强大和灵活的方式来定义复杂的搜索模式,适用于需要精确控制文本匹配的场合。而通配符则提供了一种快速且简单的方式,用于基本的模式匹配,特别是在文件名匹配方面。正则表达式在功能上更为全面,但也需要更多的学习成本。通配符则因其简单性而在快速文件搜索中非常实用。
2024-10-25 11:29:07
679
原创 export命令
命令是一个非常常用的命令,它用于设置或导出环境变量,以便在当前会话和子进程中可用。环境变量是在操作系统中定义的变量,它们可以被程序读取和修改,以影响程序的行为。命令设置的环境变量只在当前会话中有效。如果你希望每次登录时都自动设置这些变量,你需要将它们添加到你的shell配置文件中,如。命令时,需要具有相应的权限,因为某些环境变量可能受到系统安全策略的限制。来确保脚本设置的环境变量在脚本执行的子进程中可用。这将显示当前会话中的所有环境变量及其值。要查看当前的环境变量,你可以使用。是分配给该变量的值。
2024-10-24 19:38:26
406
原创 Linux中exec命令和xargs命令的使用
可以读取来自标准输入的数据,并将其作为参数传递给其他命令。是一个非常灵活的工具,可以通过不同的选项和参数来适应各种复杂的场景。可以读取来自标准输入的数据,并将其作为参数传递给其他命令。是一个非常灵活的工具,可以通过不同的选项和参数来适应各种复杂的场景。是一个非常有用的命令行工具,它能够将标准输入数据转化为命令行参数。是一个非常有用的命令行工具,它能够将标准输入数据转化为命令行参数。:指定每个命令行的最大参数数量。中的每个单词,将其转换为大写,并将结果保存到。中的每个单词,将其转换为大写,并将结果保存到。
2024-10-24 12:40:40
1207
原创 ???awk工具(非常接近传统编程语言)基本使用
AWK:又称GNU AWKgawkawk是一门语言,可以和shell脚本语言一样,纯用awk写脚本# 以“,”分隔,打印第二列 awk -F, '{print $1}' ./user.txtawk [-F] [指定分隔符] [-v] [定义变量] 'BEGIN{动作}{动作}END{动作}' [文件路径]读取文件前,先检查有无“-F”、“-v”这些参数;根据是否有“-F”、“-v”这些参数,执行BEGIN{}中的动作;
2024-10-24 12:36:51
468
原创 sed工具的基本使用
1)如果加了-n选项,就会一直读取下一行,直至行末;即使读取完毕,内容也输出完毕,sed命令也会继续往后读,直到文件的最后一行为止2)如果不加-n,会将所有的文件内容输出来,继续读取下一行;如果是想要的行,那么将第四行的内容执行相应的动作(-p -d -s -a -i -c等);动作处理完毕之后,输出对应的指定内容(只打印第四行内容)你的总结基本正确,但有一些细节可以进一步明确。下面是我对sedsed是按行读取文件的:这是正确的。sed默认一次读取一行内容,然后根据提供的命令对这一行进行处理。
2024-10-24 11:29:42
1061
原创 Shell和Shell脚本概念
Shell 是一个程序,它提供了一个用户界面,用户可以通过它来与操作系统交互。在计算机术语中,Shell 通常指的是命令行界面(CLI),它允许用户输入命令来控制计算机。Shell 可以是图形化的,也可以是文本命令行的。命令解释器:Shell 作为命令解释器,它接受用户输入的命令,并将其转换为操作系统可以理解的格式,然后执行这些命令。脚本语言:Shell 脚本是一种编程语言,它允许用户编写可以自动执行一系列命令的脚本。这些脚本可以用于自动化任务、系统管理等。环境变量。
2024-10-23 20:31:56
972
原创 shell脚本-运算操作
是一个在 Unix 和 Linux 系统中常用的命令行计算器程序,它支持任意精度的算术运算,包括加法、减法、乘法、除法,以及更复杂的数学运算,如指数、对数、三角函数等。的功能得到了扩展,它不仅能够处理任意精度的数值计算,还支持条件语句、循环控制结构、自定义函数以及输入输出操作,从而演变成了一个完整的编程语言。在其他编程语言中,如 C、Java、Python 等,这些逻辑运算符的基本概念和用法是相似的,但具体的语法可能有所不同。在需要高精度计算的场景,如科学研究、金融分析、数据挖掘等领域,得到了广泛的应用。
2024-10-23 20:30:17
985
原创 ???简单的上课点名的shell脚本
事先准备点名清单文件stu.txt,然后程序中其中读取每一行的姓名;看不懂为什么要进行for循环,最后两行有意义吗?
2024-10-23 20:28:44
174
原创 Shell脚本-条件表达式_条件测试语句(条件判断2)
在 Linux shell 中,文件表达式(也称为文件测试运算符)是用于检查文件属性的条件表达式。这些表达式可以帮助你确定文件是否存在、是否可读、是否可写、是否为目录等。文件表达式通常与或[[命令一起使用,或者作为test命令的一部分。-e 文件名:检查文件是否存在。then echo "文件存在";fi-f 文件名:检查文件是否存在且为普通文件(不是目录)。then echo "文件存在且为普通文件";fi-d 文件名:检查文件是否存在且为目录。then echo "路径存在且为目录";fi。
2024-10-23 20:27:38
1075
原创 shell脚本-函数
先声明、定义函数,再去调用函数function 函数名 {#一系列业务动作 }Shell脚本:Shell函数使用关键字function或者直接定义函数名和大括号来定义。C语言:C函数需要指定返回类型和参数列表,使用关键字intvoid等来定义。Python:Python函数使用def关键字定义,可以指定参数和默认值。
2024-10-23 20:26:20
884
原创 ??? 命令行形式的简单功能的计算器的Shell脚本
然后,我们使用条件语句检查是否确实读取了两个参数。接下来,我们使用正则表达式来检查这两个参数是否都是数字。如果用户输入的不是两个数字或者数字之间没有用空格分隔,脚本将输出错误信息并退出。如果用户输入正确,脚本将输出用户输入的两个数字以及两个状态变量的值。在Shell脚本中,要解决这个问题,你需要确保用户输入了恰好两个数字,并且这两个数字之间用空格分隔。命令来读取用户输入,并使用条件语句来检查是否确实读取了两个参数,以及这两个参数是否都是数字。最后,我们检查输入的两个数字之间是否有空格分隔,如果有,那么。
2024-10-23 20:25:41
493
原创 shell脚本-多分支选择结构case
多分支选择结构是一种编程结构,它允许程序根据多个条件选择不同的执行路径。这种结构通常涉及一个或多个条件表达式,每个表达式都对应一个特定的代码块。如果某个条件为真,则执行与之关联的代码块,然后通常跳过其他分支。在不同的编程语言中,多分支选择结构的实现方式可能会有所不同,但基本概念是相似的。以下是在Shell脚本、C语言和Python语言中实现多分支选择结构的方式及其区别。
2024-10-23 20:24:44
861
原创 Shell脚本-变量
存储变量值不是重要目的;调用变量值才是最终目的注意“变量名”与赋值号“=”中间没有空格# 定义变量name值为”Hi!name="Hi!# 使用echo打印出变量name值echo $name这是父shell和子shell的问题Shell脚本中的参数替换是一种强大的特性,**它允许你动态地修改变量的值,或者在变量未设置时提供一个默认值。**参数替换使用大括号{}和冒号这里的parameter是你想要替换的变量名,而word是当变量parameter未设置或为空时提供的默认值。如果parameter。
2024-10-23 20:23:21
798
原创 shell脚本-图形化页面设计(whiptail命令(以实现图形化跳板机为例))
类似于输入nmtui命令后会出现这样的GUI界面最终实现效果:在Linux中, 是一个非常有用的工具,它允许你在终端中创建交互式的对话框,从而为你的shell脚本添加一个简单的图形用户界面(GUI)。以下是一些基本的 命令和它们的使用方法,以及如何使用它们来设计一个具有指定功能的GUI程序:消息框(Message Box):用于显示一条消息,并且有一个确认按钮。其中,10和60分别是对话框的高度和宽度。是/否对话框(Yes/No Box):用于让用户选择是或否。如果用户选择“是”,脚本将继续执
2024-10-23 20:22:22
1190
原创 shell脚本-如何和用户交互输入
Shell脚本:使用read命令来读取用户输入,语法简单,适合在命令行环境中快速编写脚本。C语言:使用scanf函数来读取用户输入,需要包含头文件<stdio.h>,并且需要处理缓冲区溢出等安全问题。Python:使用input函数来读取用户输入,语法简洁,易于阅读和编写,适合快速开发和脚本编写。每种语言都有其适用的场景和优势,选择哪种语言取决于你的具体需求和环境。
2024-10-23 20:14:04
996
原创 shell脚本语言-需要算法?
这些只是一些基本的例子,Shell脚本的真正强大之处在于它能够将各种命令行工具和脚本逻辑结合起来,以自动化复杂的任务。在实际的生产环境中,Shell脚本通常不会实现复杂的算法,而是更侧重于流程控制和任务自动化。对于复杂的算法实现,通常会使用更高级的编程语言,如Python、Java或C++。不过,Shell脚本可以通过调用命令行工具或编写简单的逻辑来实现一些基本的算法逻辑。冒泡排序是一种简单的排序算法,它重复地遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。
2024-10-23 17:15:42
430
原创 文件描述符-Linux系统文件描述符
文件描述符(File Descriptor)是计算机科学中的一个术语,它是一个用于表示文件或套接字(socket)的非负整数。在Unix和类Unix操作系统中,包括Linux,一切皆文件,这意味着文件描述符可以用于访问文件、目录、管道、网络连接等多种类型的资源。
2024-10-23 10:14:54
340
原创 一个练习小脚本(没啥实际用途)——安装/卸载指定服务的shell脚本(重新封装yum install -y和yum remove -y但不显示安装/卸载过程,只显示是否是否存在以及是否安装/卸载成功)
或不手动全部传参而是根据提示传参。
2024-10-18 11:46:23
153
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人