最近在项目开发中,由cs开发的exe的程序,需要自动升级,该exe程序放在linux下,自动升级时检测不到该exe程序的版本号信息,但是我们客户端的exe程序需要获取服务器上新程序的版本号信息。...java.io.FileNotFoundException; import java.io.IOException; import java.io.RandomAccessFile; /** * @see 获取文件信息的工具类...15:01:26 * @version V1.0 * @since tomcat 6.0 , jdk 1.6 */ public class FileUtil { /** * @see 获取版本信息
但是在windows下每次开机都会出现一个命令提示符窗口,非常影响美观。在一番搜索之下,我找到了如何在后台运行cmd程序的方法,那就是利用vbs脚本。 比如说,要运行的脚本名字是C:\run.bat。
针对Linux的命令行混淆,我们几乎找不到任何可以使用的检测工具。在防范Windows命令混淆方面,现有的方案要么是缺乏相应工具,要么只是解决了部分问题,并没有彻底解决所有问题。...为了更好地检测相关威胁,我们设计并开发了Flerken,这是一个工具化的平台,可以用来检测Windows(CMD和PowerShell)和Linux(Bash)命令。...中声明: [root@server:~$]python –V 3、 登录MySQL控制台,导入数据库: source/your path/Flerken/flerken/lib/flerken.sql...获取帮助信息 如果你对Flerken的使用有任何疑问,可以直接创建issue并进行标注,我们会尽快解决大家提出的问题: ?...项目地址 Flerken:【GitHub传送门】 工具文档 如需了解关于Flerken的细节内容,可查看Flerken的官方文档:【点我获取】 *参考来源:We5ter,FB小编Alpha_h4ck编译
部署的需求 单机部署过程高度抽象后其实就三个步骤: 在目标机器上执行命令停掉运行中的服务 把提前准备好的变更包传上机器覆盖原来的目录 运行命令把服务再跑起来 假设我们实现了一个自动部署程序,简单地顺序执行上面的步骤...,中控,master 或堡垒机 主控端 Python 版本需要2.6或以上 被控端 Python 版本小于2.4需要安装 python-simplejson 被控端如开启 SELinux 需要安装 libselinux-python...没有安装此修补程序,Ansible 将无法在 Windows 主机上执行某些命令。...要获取证书本身的详细信息,请在PowerShell中使用相关的证书指纹运行以下命令: $thumbprint = "E6CDAA82EEAF2ECE8546E05DB7F3E01AA47D76CE" Get-ChildItem...自动发布中交互式参数应用 Jenkins 执行日志: ?
Jenkins 用 Java 语言编写,可在 Tomcat 等流行的 servlet 容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。...在此项目中,Jenkins 作为主要构建工具来搭配使用 Jenkins 安装(踩坑合集) 一般我的博客是不会介绍具体安装过程的,但是这个让我踩了一天的坑,还是列一下吧(主要是 windows 踩坑多)...Windows 环境 直接下载 Jenkins 安装包,再下载一个 JAVA SDK ,直接点击安装一把梭。...等操作系统中运行。...,存一下记录 queueId, 通过调用 Jenkins api 获取发布时间跟日志 ?
在《Tekton系列之实践篇-由Jenkins改成Tekton》中,我们可以将Jenkinsfile改成Tekton Pipeline,但是Tekton有一个很大的问题是不能很好的划分权限,特别是在Dashboard...首先需要安装Helm命令,见文档(https://helm.sh/docs/intro/install/)。...所以Jenkinsfile如下: pipeline { agent any parameters { choice(description: '选择分支', name: 'BRANCH_NAME...} stages { stage('deploy to dev'){ when{ expression { return "$BRANCH_NAME...---- 我是 乔克,《运维开发故事》公众号团队中的一员,一线运维农民工,云原生实践者,这里不仅有硬核的技术干货,还有我们对技术的思考和感悟,欢迎关注我们的公众号,期待和你一起成长!
git checkout -b branch_name 如何在Git中删除分支: 当你完成了一个分支的工作并合并了它,你可以使用下面的命令删除它: git branch -d branch_name 如何在...Git中合并两个分支: 要将你当前所在分支的历史与branch_name合并,你需要使用下面的命令: git merge branch_name 如何在Git中以图形形式显示提交日志: 我们可以使用--...git add remote https://repo_here 如何在Git中查看远程url: 使用这个命令可以查看本地存储库的所有远程存储库: git remote -v 如何在Git中获取远程repo...: git branch -r 如何在Git中获取远程repo更改: 这个命令将从远程repo下载更改,但不会在本地分支上执行合并(git pull会这样做)。...origin/main 如何在Git中获取远程分支的内容而不自动合并: 这使您可以在不将任何内容合并到本地分支的情况下更新远程。
#Git工作流程:如何在团队中协作? Git基础概念 包括仓库(repository)、版本(commit)、分支(branch)等基本概念。...Git可以在多种操作系统上安装和使用,包括Windows、Mac OS X和Linux等。以下是在不同操作系统上安装和配置Git的步骤: 1....在Windows中安装并配置Git 下载Git安装程序:从Git官方网站(https://git-scm.com/downloads)下载最新版的Git安装程序。...2.分支命令 下面是一些常见的Git分支命令: 创建分支 git branch branch_name # 创建名为branch_name的分支 切换分支 git checkout branch_name...轻量级标签只是一个指向某个提交的引用,而附注标签则包含了更多的信息,如标签名称、创建者、创建时间、备注等。
小卡片,回复 “合集” 获取系统性的学习笔记和测试开发技能图谱 问题 在 Jenkins 上通过流水线尝试拉取代码的时候,Git 返回如下错误: current Git branch is HEAD...detached at 0ff123e 解决方法 当 Jenkins 的 Git 插件 clone 一个 repo 的时候,它会 check out 出一个特定的commit,而不是 repo 的 HEAD...,这会导致 repo 处于“detached”状态,因此如果你想对 repo 执行进一步的 git 操作,就需要在 shell 脚本中执行下面的命令来指定分支名: git checkout ${BRANCH_NAME
密码可以通过如下命令获得: # cat /data/k8s/jenkins/secrets/initialAdminPassword 12b503a274354e09a465b4f76664db70...Stage 是一个逻辑分组的概念,可以跨多个 Node Step:步骤,Step 是最基本的操作单元,可以是打印一句话,也可以是构建一个 Docker 镜像,由各类 Jenkins 插件提供,比如命令:...sh 'make',就相当于我们平时 shell 终端中执行 make 命令一样。...}/' k8s.yaml" sh "kubectl apply -f k8s.yaml --record" } } 在第一步中我们增加了checkout scm命令,用来检出代码仓库中当前分支的代码...获取Token的步骤: ? ? ? 然后获取Token: ? 创建完成如下所示: ? 完 -----------------------
先说一下变量的使用方法 下面的环境变量可以在配置Jenkins Job的时候用得到,可以用在Execute shell、Execute Windows batch command、文本框 上加上编辑好的的...shell脚本 Windows:%BUILD_NUMBER% %变量名% Linux:${BUILD_NUMBER} ,也可以直接使用$BUILD_NUMBER 倘若是自己定义的参数化(Parameter...="env"/>节点,再使用${env.WORKSPACE} Jenkins可用环境变量: BRANCH_NAME 对于多分支项目,这将被设置为正在构建的分支的名称,例如,如果您希望从master部署到生产环境而不是从...BUILD_TAG “jenkins - $ {JOB_NAME} - $ {BUILD_NUMBER}”的字符串。 JOB_NAME中的所有正斜杠(/)都用破折号( - )替换。...JENKINS_URL Jenkins的完整URL,如http:// server:port / jenkins /(注意:仅在系统配置中设置Jenkins URL时可用) BUILD_URL 此版本的完整
默认登录就是admin, 创建一个Jenkins用户。 ? 登录Jenkins用户然后配置SSH-KEY,创建ssh-key添加到jenkins用户配置中。...| | .. * * o | | . =.+ | +----[SHA256]-----+ 默认的key在JENKINS_HOME目录中/var/jenkins_home...@jenkins-6ccf555769-sfdw6 这里使用的是id_rsa.pub,复制文件内容,然后添加到Gerrit Jenkins用户中。...Gerrit传递的参数还是挺多的,可以很方便的获取。基本上这些参数就够用了。 ?...哈哈,注意文件中的空格.....
我们以jenkins为例,其本质就是从远程仓库拉取代码,然后本地编译打包,然后上传到目标服务器执行启动命令,简化过程如下: 那么在一些简单的项目中,我们可不可以完全自己写一个脚本来做打包部署呢,答案是可以的...,我们可以模仿jenkins的工作流程并且做一些简化: 从git拉取项目代码到服务器 使用maven命令进行编译打包,打成可执行的jar 使用命令或者其他工具启动java服务(java -jar,docker.../bin/bash #项目路径 WORK_DIR=/opt/app/server/springboot-demo #项目名称 PROJECT_NAME=springboot-demo #获取代码 cd...1.部署日志记录 将部署开始和结束的日志追加到部署日志中。...缺少监控和报告:jenkins 提供了丰富的监控和报告功能,如构建历史、构建日志、构建结果等,而使用 Shell 脚本可能需要自行实现这些功能。
var/jenkins_home Jenkins容器在工作的时候,如果要执行Docker的命令(例如 docker ps、docker run等),需要有个途径能连接到宿主机的docker服务,此参数就是用来建立容器和宿主机...访问 Jenkins Docker 容器 有时候需要进入 Jenkins 容器执行一些命令,可以通过 docker exec 命令访问,例如:docker exec -it [containerid]...bash 若要手动重启 Jenkins,可以执行以下命令:docker restart [containerid] Jenkins 基本配置 通过以上步骤,如果正常走到这里,可以通过以下地址访问http...解锁 Jenkins 输入一下命令获取解锁的 token, docker exec kmywjenkins cat /var/jenkins_home/secrets/initialAdminPassword...类型选择 SSH Username with private key,Username 是连接服务器的用户名,如 Jenkins 在 Private Key 项选中 Enter directly,点击
前言 Jenkins在日常工作中占据了一个非常重要的角色,帮助我们节省了大量用于构建的时间。有些公司有运维大哥对Jenkins进行维护,如果没有那只能自己动手了。...docker rm jenkins 运行命令加入了-u 0重新运行。...,如果是云服务器还需要检查安全组设置 首次启动jenkins需要输入密码,需要进入容器内获取密码。...自动升级 Jenkins提供了自动升级的方式 手动升级 可以去Jenkins的官网下载好最新jar包上传到服务器,也可以使用wget命令。...构建测试 上面演示的是将流水线配置在jenkins内,其实我们还可以从SCM中获取,比如git。
Tencent at Github 更有甚者,一向自己造轮子的的微软,也打算把巨达 300G 的 Windows 源代码迁移到 Git 上进行管理,他们为 Git 提供了新的 GVFS 实现,有效地改善了...Microsoft will migrate windows source code to git 另外说一句:Docker 的二进制 image 管理,也是基于 git 实现的。...具体流程看图即可,下面对几个常用命令进行简单介绍 PS: 图中没有提到 rebase 和 cherry-pick 命令,这两个命令也非常强大,后面有提到,有时间可以关注一下。...Branch 和 Tag 如刚从所说,Branch 和 Tag 都可以看成是补丁的时序化集合,branch 可以互相合并,在 clone 完 repository 后有一个主线分支叫做 master。...$ git fetch [REMOTE_NAME] # 获取远程仓库更新 $ git branch -a # 查看包括远程仓库以内的所有分支 $ git push [REMOTE_NAME] [BRANCH_NAME
最好设置为绝对路径,如“/var/jenkins”或“c:\jenkins”。这里填写的是相对于slave主机的路径,正常情况下,不必对master主机可见。...用法: 控制Jenkins如何在这台机器上安排构建. 1)尽可能的使用这个节点 这是默认和常用的设置....启动方法: 控制Jenkins怎么启动slave 1) Launch slave agents on Unix machines via SSH 通过SSH连接,发送命令来启动slave。...4)Let Jenkins control this Windows slave as a Windows service 不推荐。...这种模式下,jenkins会尽量保持salve在线。如果不通过用户援助,启动slave, 如果slave不可获取,jenkins将周期性的尝试启动slave。
在Windows平台安装msysgit后,Git的命令环境是Git Bash. 配置Git的User信息....显示暂存栈中储藏的更改 $ git stash list 将储藏的更改从暂存栈中恢复到工作区 $ git stash pop 清除暂存栈中内容 $ git stash...clear 5.分支管理(branch,merge) $ git branch branch_name #创建新分支 $ git checkout branch_name ...#签出并切换到新分支 或者一条命令做两条命令的事: 创建新分支并切换到新分支 $ git checkout -b branch_name 查看当前分支 $ git branch...开发工作将在本地版本库中完成,更改后提交到本地版本库,再推送到远程版本库中. 当然,远程版本库(Remote Repository)可以放在远程服务器上,也可以放本地.
#添加所有文件 #第二步,把暂存区文件提交到本地仓库 git commit -m 例子:新建learngit文件夹,并将该文件夹初始化为Git仓库,再向仓库中添加一个test.txt...git reflog #查看所有的历史命令,获取你想要回到的版本id, git reset --hard #回退到该版本 分支管理(平行宇宙) 分支简介 Git用master指向最新的提交...] git switch [branch_name] 创建并切换 git checkout -b [branch_name] git switch -c [branch_name] 合并分支 git...:http://git-scm.com/docs/git-log 一些常用命令 git status #查看项目文件此时的状态(在工作区、缓存区还是在仓库中) git reflog #查看所有的历史命令...SourceTree 一款用于Windows和Mac的免费Git可视化管理工具。
、类库等与构建相关的具体操作; 由于一旦流水线步骤及变量确定一般就不会改动了,而扩展共享库的方法等具体操作实现我们可以以代码的方式放入远程版本中,修改提交后Jenkinsfile构建自动加载共享库,获取最新的构建修改...注意:我们使用archiveArtifacts来归档版本包,回滚时可从归档路径中获取。...扩展共享库 一、添加扩展共享库 Manage Jenkins--Configure System--Global Pipeline Libraries中添加 ?...2.回滚-rollback 回滚的版本存在于archiveArtifacts归档后的构建目录中,在此目录中 ${JENKINS_HOME}/jobs/`echo ${JOB_NAME}|awk -F'/...总结 Jenkins扩展共享库+多分支流水线一方面可以简化CI/CD过程中的项目管理,一方面可以驱动我们各个环境的标准化,为实现自动化做好铺垫。
领取专属 10元无门槛券
手把手带您无忧上云