Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6550785
  • 博文数量: 915
  • 博客积分: 17977
  • 博客等级: 上将
  • 技术积分: 8846
  • 用 户 组: 普通用户
  • 注册时间: 2005-08-26 09:59
个人简介

一个好老好老的老程序员了。

文章分类

全部博文(915)

文章存档

2022年(9)

2021年(13)

2020年(10)

2019年(40)

2018年(88)

2017年(130)

2015年(5)

2014年(12)

2013年(41)

2012年(36)

2011年(272)

2010年(1)

2009年(53)

2008年(65)

2007年(47)

2006年(81)

2005年(12)

分类: LINUX

2019-07-13 22:47:16

前段时间,参加了阿里云MVP共创任务的PGAdmin4定制及汉化工作,昨天终于完成了验收。功能完成。今天将定制的代码及部署(操作)手册写完并提交给工作人员了。
由于当时接任务的时候PGAdmin还是4.6版本,开源软件更新就是快。到现在不到两个月时间,已经更新到4.10版本了。在提交完代码和手册的时候就在想,如果说新版本中我们变更的文件发生了变化怎么,如果直接采用同版本的文件替换方式,是否有一定的风险呢(我觉得肯定是有的)。思考了一段时间,针对我们对POLARDB新增加的Python源代码,采用直接拷贝到指定目录的方式没有问题,但对于在原有文件上的修改,是否可以采用bash脚本直接修改文件呢。下面采用Linux的bash脚本实现文件的变化。

点击(此处)折叠或打开

  1. #!/bin/bash
  2. echo abcd |sed 's/a/A/'>/dev/null
  3. if [ $? -ne 0 ]; then
  4. please install sed first
  5. exit 2
  6. fi
  7. echo -n "enter the pgadmin 4.6 install dir:"
  8. read homedir
  9. echo $homedir
  10. if [ ! -d $homedir ]; then
  11. echo $homedir not exists.
  12. exit 1
  13. fi
  14. grep "polardb" $homedir/web/config.py>/dev/null
  15. if [ $? -eq 0 ]; then
  16. echo polardb had installed.
  17. else
  18. sed -i '/"gpdb": "",/a \ "polardb": ""' $homedir/web/config.py
  19. fi
  20. echo config.py install finished!

ed工具是否安装,还有一种方式是使用which sed来检测。
然后由用户指定pgadmin4.6及以上版本的安装主目录。
最后通过sed命令完成在指定行后追加PLOARDB的配置。由于python是采用缩进来进行代码分层的。所以追加行要有4个空格(或者一个TAB键)。在/a命令后如果是TAB键一定要输入\\t(转义)。也可以采用一个\后面输入四个空格的方式来完成。(最开始没有使用\转义,结果不管输入多少个空格最后替换后都是行首无空格。
此脚本仅完成了一个文件内容的变更。关于追加文件由脚本完成拷贝,将资源文件po的追加及将po编译为mo的过程,暂时还没有实现。考虑中……
阅读(7123) | 评论(3) | 转发(1) |
给主人留下些什么吧!~~

renxiao20032019-07-16 15:02:05

cynthia:欢迎回家

会一步步刚博客转回来。

回复 | 举报

cynthia2019-07-15 10:48:58

renxiao2003:给阿里云干活,在云西社区发文,居然评审不通过。云西社区真CD。准备将所有博客导回来。

欢迎回家

回复 | 举报

renxiao20032019-07-13 22:49:20

给阿里云干活,在云西社区发文,居然评审不通过。云西社区真CD。准备将所有博客导回来。