当前位置: 首页 > news >正文

贵阳公司官方网站建设徽章设计制作小程序

贵阳公司官方网站建设,徽章设计制作小程序,博客社区类网站模板下载,wordpress系统邮件设置方法这里的需求前提是#xff0c;在项目中进行某些操作前#xff0c;需要在命令后对shell配置文件的进行修改#xff08;如ip、port#xff09;#xff0c;这个对于用户是不友好的#xff0c;需要改为用户页面输入ip、port#xff0c;后台自动去操作修改配置#xff1b;那么… 这里的需求前提是在项目中进行某些操作前需要在命令后对shell配置文件的进行修改如ip、port这个对于用户是不友好的需要改为用户页面输入ip、port后台自动去操作修改配置那么这篇博客的由来就有了。 上面图片是AI创作未经允许不可商用哦 目录实现功能描述功能实现拆解项目加载自定义变量项目加载自定义变量文件到系统变量中自定义变量文件如下java代码如下实操验证如下shell通过source .env环境变量文件方式加载test.env环境变量文件如下shell模版文件如下实操验证如下替换shell模版并运行项目加载自定义变量文件到系统变量中shell通过source .env环境变量文件方式加载以下为实际工作简化后描述实现功能描述 项目加载自定义变量自定义变量替换shell模版内容项目运行shell 功能实现拆解 针对上述功能描述其实可以拆解为三步 实现项目加载自定义变量实现替换shell模版内容运行shell 项目加载自定义变量 这里有两种实现 一种是项目加载自定义变量文件到系统变量中 另一种是shell通过source .env环境变量方式加载。 项目加载自定义变量文件到系统变量中 这种方法的好处是项目中可以获取到自定义变量如果项目代码需要获取自定义变量进行操作可以考虑使用此方式 新增一个自定义变量文件当然也可以在代码中固定写入变量直接加载到系统中这样的缺点就是不灵活如果有变动就需要改代码 自定义变量文件如下 BASE_ROOT_DIR/home LICENSE_PATH/home/LICENSE PACKAGE_PATH/home/test.tar.gzjava代码如下 /*** 加载自定义变量文件到系统变量中* param configFile*/public static void loadProperties(String configFile){try {FileInputStream propFile new FileInputStream(configFile);Properties p new Properties(System.getProperties());p.load(propFile);System.setProperties(p);} catch (Exception e) {e.printStackTrace();}}调用loadProperties方法后就可以通过System.getProperty(key)获取自定义的变量了 如获取BASE_ROOT_DIRSystem.getProperty(BASE_ROOT_DIR) 实操验证如下 自定义变量文件 测试代码 import java.io.FileInputStream; import java.util.Properties;public class LoadProperties {public static void main(String[] args) {String configFile /Users/kunzhi/Downloads/learn/linuxTest/config.sh;loadProperties(configFile);System.out.println(BASE_ROOT_DIR: System.getProperty(BASE_ROOT_DIR));System.out.println(LICENSE_PATH: System.getProperty(LICENSE_PATH));System.out.println(PACKAGE_PATH: System.getProperty(PACKAGE_PATH));}public static void loadProperties(String configFile){try {FileInputStream propFile new FileInputStream(configFile);Properties p new Properties(System.getProperties());p.load(propFile);System.setProperties(p);} catch (Exception e) {e.printStackTrace();}} }运行输出结果 shell通过source .env环境变量文件方式加载 这种方法的好处是在shell执行时直接获取环境变量不需要项目代码做多余的操作 新增一个.env环境变量文件如test.env当在执行的shell文件中首行加入source命令source test.env或者先在命令行执行命令source test.env后执行shell文件 test.env环境变量文件如下 BASE_ROOT_DIR/home LICENSE_PATH/home/LICENSE PACKAGE_PATH/home/test.tar.gzshell模版文件如下 cd ${DATASYS_BASE_ROOT_DIR} pwdecho DATASYS_PACKAGE_PATH: ${DATASYS_PACKAGE_PATH} echo PACKAGE_PATH: ${PACKAGE_PATH} echo LICENSE_PATH: ${LICENSE_PATH}实操验证如下 创建shell模版文件 test.sh并执行 创建环境变量文件 test.env并在test.sh文件首行加入命令source test.env 替换shell模版并运行 因为替换是否成功只有通过运行结果才能有力证明所以我们放在一起看 由于替换shell模版内容的具体操作受自定义变量加载方式影响所以我们还是按照两种加载方式来看 项目加载自定义变量文件到系统变量中 如果是项目加载自定义变量文件到系统变量中还需要项目获取变量并传入shell替换 代码如下 import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.LineNumberReader; import java.util.Properties;public class LoadProperties {public static void main(String[] args) {String configFile /Users/kunzhi/Downloads/learn/linuxTest/config.sh;//加载自定义环境变量loadProperties(configFile);String BASE_ROOT_DIR System.getProperty(BASE_ROOT_DIR);String LICENSE_PATH System.getProperty(LICENSE_PATH);String PACKAGE_PATH System.getProperty(PACKAGE_PATH);System.out.println(BASE_ROOT_DIR : System.getProperty(BASE_ROOT_DIR));System.out.println(LICENSE_PATH : System.getProperty(LICENSE_PATH));System.out.println(PACKAGE_PATH : System.getProperty(PACKAGE_PATH));//需要传入shell模版替换的内容String[] evnp {BASE_ROOT_DIR BASE_ROOT_DIR, LICENSE_PATH LICENSE_PATH, PACKAGE_PATH PACKAGE_PATH};String shellFile /Users/kunzhi/Downloads/learn/linuxTest/test1.sh;//替换并运行shellreplaceAndRun(shellFile, evnp);}//加载自定义环境变量public static void loadProperties(String configFile){try {FileInputStream propFile new FileInputStream(configFile);Properties p new Properties(System.getProperties());p.load(propFile);System.setProperties(p);} catch (Exception e) {e.printStackTrace();}}//替换并运行shellprivate static void replaceAndRun(String path, String[] evnp) {try {Process process Runtime.getRuntime().exec(new String[]{/bin/sh, -c, path}, evnp,null);//只有process.waitFor() 结果为0才说明执行成功了if (process.waitFor() ! 0) {throw new Exception(String.valueOf(process.waitFor()));}InputStreamReader ir new InputStreamReader(process.getInputStream());LineNumberReader input new LineNumberReader(ir);String line;//输入shell中执行的每一行while ((line input.readLine()) ! null){if (line.contains(ERROR)) {throw new Exception(ERROR);}System.out.println(line);}} catch (Exception e) {System.out.println(e);}} }运行结果 shell通过source .env环境变量文件方式加载 如果是shell通过source .env环境变量方式加载在上一步实操演示可以看出其实已经达到替换效果直接执行shell文件即可了 代码如下 package test;import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.LineNumberReader; import java.util.Properties;/*** author yanZhiHang* date 2023/2/26 17:06*/ public class LoadProperties {public static void main(String[] args) {runShell(shellFile1);}private static void runShell(String path) {try {Process process Runtime.getRuntime().exec(new String[]{/bin/sh, -c, path}, null,null);if (process.waitFor() ! 0) {throw new Exception(String.valueOf(process.waitFor()));}InputStreamReader ir new InputStreamReader(process.getInputStream());LineNumberReader input new LineNumberReader(ir);String line;while ((line input.readLine()) ! null){if (line.contains(ERROR)) {throw new Exception(ERROR);}System.out.println(line);}} catch (Exception e) {System.out.println(e);}} }
http://www.tj-hxxt.cn/news/232483.html

相关文章:

  • 惠州企业网站建设公司做免费互动小游戏的网站
  • 怎么建设境外网站wordpress seo链接
  • 免费推广网站2022北京网站建设公司案例
  • 网站如何提交关键词誉字号网站
  • 网站查不到备案2015网站备案没下来
  • 佛山信息技术网站开发跨境电商在哪些网站上面做
  • 做网站的人跑了网站可以恢复吗怎么建网站教程视频app
  • 网站搭建服务器需要多少钱网站建设费一般摊销几年
  • 长春网站制作价格网站备案幕布
  • 论述题亿唐网不做网站做品牌免费制作动态图片软件
  • 怎样才能把网站做好百度云资源搜索引擎
  • 帝国cms建站系统微信网站怎样做
  • 微信手机网站案例网站建设 需要ae吗
  • ipv6网站开发免费动画制作软件
  • 深圳公司网站建立网站如何伪静态
  • 网站推广如何做的域名买好怎么开始做网站
  • 网站没有建设好可以备案吗长业建设集团有限公司网站
  • asp.net网站开发技术google网页版入口
  • 网站的风格与布局设计永修中铁三局招聘
  • 上海网站建设公司排行榜网站地图怎么生成
  • 做招聘网站还有法盈利吗爱奇艺的网站是用什么做的
  • 宝塔管理wordpressseoul是啥意思
  • 青岛做网站皆赴青岛博公司企业网络宣传设计方案
  • 凡科建站建网站网络营销推广策略有哪些
  • 福建省教师空间建设网站logo免费设计无水印
  • 网站制作哪里做得好做网站需要学哪些语言
  • 建设一个棋牌网站都得准备什么用兰州网站哪里做
  • 荆州公司网站建设建设部网站办事大厅栏目
  • 网站开发公司创业策划wordpress关键词描述插件
  • 免费建站软件哪个最好网站特色分析