java学习应用篇|使用环境变量做一些工具
环境变量综述
一直以来,我们好像对环境变量的使用,一直停留在配置JDK环境变量,配置Maven环境变量,配置Gradle环境变量等等,但其实环境变量的作用,远远不止于此,在本文中,小刀简述一下几个小功能的思路作为抛砖引玉,大家有好的想法和实践欢迎随时和小刀交流。
环境变量做工具的思路
在这里,我们借用了上篇文章的图片,在这里我们可以看到,设置了环境变量之后,就可以通过echo方式输出,就是和代码中,我们定义的那些变量很相似了。
String a = "java技术大本营"
然后下面我们使用“java技术大本营”的时候,就直接使用a就可以了。
这样,我们就可以把一些简单的命令、脚本放到环境变量里面
用环境变量执行命令
注:往后面的一些代码/示例,我们都会以linux环境为基础做演示,除非是特别需要windows的情况下,才会使用win,建议小伙伴们也装一下ubuntu/centos, 能更好的走进系统。
执行git pull 命令
我们在~/.bashrc
中最后一行添加如下环境变量
然后保存,重新打开终端即可生效。
然后我们对先用echo 对刚才的变量进行输出,然后再用$GP来执行一下,就可以看到是等同于 git pull
的效果
有了这个例子之后,小伙伴们就可以扩宽思路,就不仅仅是Git命令了, 一些常用的命令都可以这样简化, 再有甚者,可以编一套指令,如
G开头的代表GIT命令,GP(git pull),GPH(git push)
M开头的代表Maven命令,MP(mvn package)
GD开头的代表Gradle命令, GDJAR(gradle bootjar)
S开头的代表SSH命令,STEST1(ssh root@test1)
再者就要靠小伙伴自己发挥了
用环境变量执行脚本
这里我们要引入一个新的环境变量值 PATH, 对其直接输出可以看到一系列的bin目录
我们先在用户目录下,建一个存放脚本的文件夹,然后新建一个update.sh
,如下所示
我们进入了两个代码目录,然后输出路径,然后执行git pull , 然后打印一句话
现在的目录情况如上所示,然后我们把目录~/script
也加入到PATH中,在~/.bashrc
中编辑如下
保存之后,重新打开终端或者source ~/.bashrc
,然后直接执行update.sh
可以看到,通过脚本,把我们把电脑中的代码都更新了一遍,这个是很简单的脚本,我们可以再写的复杂一点,比如,一键打开IDEA,SwitchHosts,DataGrip,网易云,等工具。做个自定义启动。
再比如,可以写一个备份资料,文件夹的脚本,直接输入一个back.sh
就可以完成备份了。
扩展思考
1:对应的windows环境变量工具应该怎么实现? 2:PATH变量有什么用?
- CDH内存调拨过度警告分析
- Ztorg:从 root 到 SMS
- [LeetCode]Math主题系列{第7,9,13,273题}
- 被忽视的攻击面:Python package 钓鱼
- [LeetCode]LinkedList主题系列{第2题}
- [LeetCode]HashTable主题系列{第3题}
- 如何使用Oozie API接口向Kerberos集群提交Java程序
- [LeetCode]Array主题系列{35,39,40,48题}
- 如何使用Sqoop2
- [LeetCode]Array主题系列{1,11,15,16,18,26,27,31,33,34题}
- Bwapp漏洞平台答案全解-A1(第三篇)
- pom.xml配置文件中所有标签及作用简单描述
- 关于C#获取动态的时间差函数
- SQL Server 存储过程
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Linux系统多网卡环境下的路由配置详解
- 前端3D文字效果
- Bash中尖括号的更多使用方法
- linux mpstat命令使用详解
- CentOS7安装调试Mysql数据库的步骤详解【实例】
- 深入理解Bash中的尖括号(适合初学者)
- linux安装php7的方法详解
- centos7.2搭建nginx的web服务器部署uniapp项目
- 通过 SSH 在远程 Linux 系统上运行命令的方法
- 详解Linux Namespace之User
- Centos7.0安装ceph(JEWEL)及以上版本的实例解析
- 详解Linux内核进程调度函数schedule()的触发和执行时机
- Linux下使用SSH远程执行命令方法收集
- 详解Centos7.2编译安装zabbix3.2(详细步骤)
- Linux下误删messages文件的找回方法