在开发的过程中可能Linux环境不一致需要适应本地环境的HOME目录,可以通过脚本来修改配置文件内容,写一个test.sh的脚本 在脚本里写入以下命令 sed -i “s#ftfts_com_serverpa_path=.*#ftfts_com_serverpa_path= $HOME#g” test.properties 该命令的基本语法如下 sed -i “s/要替换的内容/替换后的内容/g” 文件名 使用#代替/能够适应替换内容中含有/的内容,不需要转译.不然还要使用//转译!.*是匹配所…
应用场景 项目开发中某个功能需要抽取成方法写成一个工具类,提供给别人使用.写过工具类的人都知道,工具类中的方法一般都是静态方法,可以直接使用类名点方法名调用, 使用很方便,比如判断某个对象是否为空的方式Objects.equals().由于我写的这个工具类中需要读取配置文件中的内容,但是常规方法注入成员变量时都不是静态的,比 如这种方式: @Data@Componentpublic class GBaseApiConfig { @Value("${gbase.api.prefix}")…
import java.io.InputStream; import java.util.Enumeration; import java.util.List; import java.util.Properties; import java.util.ResourceBundle; import org.junit.Test; /** * 获取*.properties配置文件中的内容 ,常见的两种方法: * * @author 冰雨凌風 * */ public class ReadProper…
linux shell执行有两种方式 shell脚本以#!/bin/bash开头,执行shell时先检查首行,在内部以下列方式执行: $/bin/bash script.sh 1. 使用sh执行. $sh script.sh #脚本位于当前目录下 或者 $sh /home/path/script.sh #使用完整路径 2. 独立运行脚本. 需要具备可执行权限,可以通过下面的方式设置 $chmod a+x script.sh 或者 $chmod 755 script.sh 然后可以通过下列方式执行…
一.摘要 好长时间没写blog了,之前换了一家公司.表示工作更有战斗力了,可惜就是没时间写文章了.在这段时间其实是遇到很多问题的,只是都是记录下来,并没有花时间去研究解决.但是这周遇到这个问题没办法让我继续前进了.必须记录一下.以被后人使用.不多说了,进入主题. 二.前提 1.对于GA的了解(自行google) 2.对CampaignTrackingReceiver类的了解,他是当从GP上下载并且安装完成一个app的时候,发送一个广播,会在Intent中携带一些数据,一般是Refer值,这里可以…
最近在做一个仓库管理系统,架构在svn之上.要求每一项操作要记录在log文件中,弄了很久起初感觉无法向库中的文本文件添加东西,就是修改库中的文本文件.于是采用了一个很笨的办法:    现将库中的log文件export下来到本地,修改完之后将库中的原来的log文件删除,然后上传(import)本地这个新的日志文件,然后删除掉本地的这个日志文件. 先看看代码: package com.repositoryclient.svnoptions; import java.io.BufferedWriter…
在python的文件操作中,是没有办法对文件中具体某行或者某个位置的内容进行局部的修改的,如果需要对文件的某一行内容进行修改,可以先将文件中的所有的内容全部读取出来,再进行内容判断,是否是需要修改的内容,如果是就替换内容,并且将修改替换过的内容和没有修改的内容全部写入到新的文件中. # 打开旧文件 f = open('file_text.txt','r',encoding='utf-8') # 打开新文件 f_new = open('file_text_bak.txt','w',encoding…
1.shell命令搜索顺序 在linux shell 中输入一个命令,如果有多个同名指令,shell需要按照一定规则去取优先级高的一个执行,shell命令的搜索顺序为: 1.别名,使用alias创建的命令. 2.关键字,如if,for. 3.函数 4.内置命令,如cd,pwd等 5.外部命令,在PATH路径中寻找 2.指定执行某类命令 builtin :指定执行内置命令 command :指定 PATH 下的命令 3.其他相关指令 type:查看命令类型,分别是内置还是外部命令或其他 enabl…
(1)在每个命令之间用:(分号)隔开. (2)在每个命令之间用&&隔开. &&表示:若前一个命令执行成功,才会执行下一个.这样,可确保所有的命令执行完毕后,其执行过程都是成功的 这种执行方法,经常运用在自动安装的Script中. 例如:自动安装Apache及PHP的Script文件: #! /bin/bash # 解压 tar xvzf httpd-2.2.tar.gz && tar xvzf php-5.3.tar.gz && #设定Apa…
最近写自动安装脚本遇到redis-server安装的时候,需要输入3个回车,对此尝试无果,最后google比较满意的解决办法: shell 脚本需要交互,比如输入回车,输入YES/NO Y/N之类进行选择 Linux 中shell脚本运行时经常需要进行交互,比如安装软件的过程中对license声明的确认,需要输入yes,回车之类的确认信息.这个在自动化安装的时候就会是个问题. 1.通常对于这个问题比较灵活的解决方法就是TCL的Expect.但Expect还需要另外安装,平台通用性不高,比较麻烦.…