Git log查看

检查某人提交文件

git log –author=”wangxingjing”  –stat

按关键词搜索

git log –grep=comment注释的关键词

// 查询所有提交者

git log –since ==2018-12-25 –until=2019-09-28 –format=’%aN’ | sort -u |

while read name;

 do echo -en “$name\t”;

 git log –author=”$name” –pretty=tformat: –numstat | awk ‘{ add += $1; subs += $2; loc += $1 + $2 } END { printf “added lines: %s, removed lines: %s, total lines: %s\n”, add, subs, loc }’ -;

Done

//单行格式

git log –since ==2018-12-25 –until=2019-09-28 –format=’%aN’ | sort -u | while read name;do echo -en “$name\t”;git log –author=”$name” –pretty=tformat: –numstat | awk ‘{ add += $1; subs += $2; loc += $1 + $2 } END { printf “added lines: %s, removed lines: %s, total lines: %s\n”, add, subs, loc }’ -; done

//-表示上一个过程的输出

// 查询单人

git log –since=2018-09-01 –until=2019-09-28 –author=”author-name” –pretty=tformat: –numstat

 | gawk ‘{ add += $1 ; subs += $2 ; loc += $1 – $2 } END { printf “added lines: %s removed lines : %s total lines: %s\n”,add,subs,loc }’ –

默认不用任何参数的话,git log 会按提交时间列出所有的更新,最近的更新排在最上

–pretty 选项,可以指定使用完全不同于默认格式的方式展示提交历史。

format,可以定制要显示的记录格式,这样的输出便于后期编程提取分析,像这样:

 $ git log –pretty=format:”%h – %an, %ar : %s”

ca82a6d – Scott Chacon, 11 months ago : changed the version number

085bb3b – Scott Chacon, 11 months ago : removed unnecessary test code

a11bef0 – Scott Chacon, 11 months ago : first commit

下表列出了常用的格式占位符写法及其代表的意义。

常用的格式占位符

git log 命令支持的常用选项及其释义。

选项及释义

git log常用搜索条件

pandoc转markdown

word转markdown

pandoc -t gfm –extract-media ./img -o ttt3.md ttt.docx
–extract-media 文档中图片输出目录

markdown转word

pandoc ttt.md -f gfm -o file.docx  –toc -N
–toc create a table of contents (TOC)
-N number sections automatically.

Windows IKEv2设置

Windows 7

思路: CA证书装在本地计算机,用户证书装在当前用户。至于随p12导入的本地计算机的用户证书和当前用户的CA证书,完全可以删除。

安装证书(两步都要):

步骤一:在开始菜单中搜索mmc,右键以管理员身份运行。文件-添加或删除控制单元-证书-添加-本地计算机-确定。左侧窗格找到“受信任的根证书颁发机构”,操作-所有任务-导入,将p12文件导入本地计算机。

步骤二:直接双击p12文件,将其安装到当前用户。

Windows 10

安装证书(两步都要):

步骤一:直接双击p12文件,将其安装到本地计算机。

步骤二:直接双击p12文件,将其安装到当前用户。

配置VPN后你会发现网络数据依然是直连的,这是因为Win10对于IKEv2 VPN不添加默认网关,只对VPN的子网生效(Split tunneling)。如果要应用到全局,须从控制面板或Powershell手动配置。

点击系统托盘的网络图标-网络设置-更改适配器选项,右击VPN连接-属性-网络选项卡-双击TCP/IPv4-高级…,勾选“在远程网络使用默认网关”(用于应用全局网关);同时取消勾选“自动跃点”,并在下面文本框里输入15或更小的数字(用于强制通过VPN远程解析DNS)。

Gimp 抠图

GIMP:利用蒙板工具实现人像抠图

利用蒙板工具进行抠图简单介绍

方法步骤

1.打开图像

2.复制图层

3.选中图层

4.将图层改为单色

5.人像与背景分离

6.反相显示

7.人像部分描白

8.添加图层蒙板

9.粘贴白色人像轮廓

10.图层不可视

11.解决人像范围不正确

12.随意更换图像背景

利用蒙板工具进行抠图简单介绍

在GIMP中用蒙板工具抠图的方法,大体步骤为:复制图层、单色化、增加对比度、描画轮廓、复制轮廓;然后在原始图层上添加蒙板、粘贴轮廓;最后让生成轮廓的图层不可见。

方法步骤

1.打开图像

用GIMP打开所要处理的图像

2.复制图层

在图层上右击,选择复制图层

3.选中图层

单击带有“副本”的图层,即可选中刚复制的图层

4.将图层改为单色

选中刚复制的图层后,在菜单栏单击“颜色”,选择“分量”中的“单色混合器”

5.人像与背景分离

在打开的“单色混合器”对话框中,调整红、绿、蓝三色的值,使人像与背景尽量分离

6.反相显示

点击菜单栏的“颜色”,选择“反相”,将复制的图层反相显示

选择“反相”后,效果如下图

7.人像部分描白

在工具窗口中选择“画笔”工具,将人像轮廓以内的部分全部描成白色;

描完后可以通过“颜色”菜单选择“亮度-对比度”,进一步提高人像与背景的反差

8.添加图层蒙板

此时带有“副本”的图层处于选中状态,按Ctrl+c组合键进行复制白色人像轮廓;

然后点击原图层,右键选择“添加图层蒙版”

在弹出的对话框中,选择“白色(全不透明)”,单击添加按钮

9.粘贴白色人像轮廓

单击原图层上代表蒙板的白色小方块;

然后按Ctrl+v组合键,将已复制的白色人像轮廓粘贴过来;

这时会出现一个名为“浮动选区”的图层,右击该图层,选择“固定图层”

10.图层不可视

此时,图层又只有两个,单击带有“副本”图层前面的眼睛图标,让该图层变得不可视,即将人像从背景中分离出来了

11.解决人像范围不正确

如果此时发现人像部分的范围少了或者多了,则可以在带有图层蒙板的原始图层上右击,选择“显示图层蒙板”,重新使用画笔对蒙板进行描画(描黑是隐藏,描白是显现)

12.随意更换图像背景

完成人像背景分离后,便可以运用多种方法随意更换图像的背景了;

比如:新建一个图层置于最下层,使用“油漆桶”工具为该图层进行背景填充

python3连接oracle数据库

声明:pythoncx_Oracleinstantclient的版本应一致

我这里使用的版本是python3.6 64 ,cx_Oracle-5.3-11g.win-amd64-py3.6-2instantclient-basic-windows.x64-18.5.0.0.0dbru

1. 首先安装cx_Oracle

尽量不要直接使用pip install cx_Oracle,这样默认安装的是最新版本的cx_Oracle,可能会出现以下错误

1.1 cx_Oracle 报错:cx_Oracle.DatabaseError: DPI-1050: Oracle Client library must be at version 11.2

解决方法:从 https://pypi.python.org/pypi/cx_Oracle/5.3 下载低版本cx_Oracle版本 可以下载cx_Oracle-5.3-11g.win-amd64-py3.6-2.exe ,然后直接安装

1.2 如果在安装cx_Oracle-5.3-11g.win-amd64-py3.6-2.exe 时提示Python version 3.6 required, which was not found in the registry

可以通过执行这个文件来解决

register.py   链接: https://pan.baidu.com/s/1GcPK_I7ddSLZkM2sv7AHtA    提取码: qrwm 

2. 下载instantclient-basic-windows.x64-11.2.0.4.0.zip,解压并配置环境变量(放到path中)

下载地址:https://www.oracle.com/technetwork/cn/topics/winx64soft-101515-zhs.html

下载好后解压,并配置环境变量

3. instantclient下所有.dll文件到python\Lib\site-packages\下(我这里的路径为C:\Develop\Anaconda3\Lib\site-packages

4. 测试代码如下

import cx_Oracle conn=cx_Oracle.connect('username','password','172.16.5.29:1521/ORCL') cursor=conn.cursor()   print("连接成功!")   cursor.close() conn.commit() conn.close()

当你看到“连接成功”的提示语句时,那么就恭喜你成功了用python连上了oracle数据库

python 获取mysql查询结果的相应字段值

完成这个任务的整体流程,具体步骤如下:

步骤1        连接到MySQL数据库

步骤2        执行SQL查询语句

步骤3        获取查询结果

步骤4        提取相应字段的值

接下来,我将逐个步骤详细说明。

步骤1:连接到MySQL数据库

首先,我们需要安装Python的MySQL驱动程序。在命令行中运行以下命令安装驱动程序:

pip install mysql-connector-python  #mysql-connector已经过期

接下来,在Python脚本中引入MySQL驱动程序,并使用connect()函数连接到MySQL数据库。你需要提供数据库的相关信息,例如主机名、用户名、密码和数据库名称。

import mysql.connector

# 连接到MySQL数据库

cnx = mysql.connector.connect(

  host=”localhost”,

  user=”yourusername”,

  password=”yourpassword”,

  database=”yourdatabase”

)

步骤2:执行SQL查询语句

一旦成功连接到MySQL数据库,我们就可以执行SQL查询语句了。在这个示例中,我们执行一个简单的SELECT语句来检索一条数据:

# 执行SELECT语句

cursor = cnx.cursor()

sql = “SELECT * FROM yourtable”

cursor.execute(sql)

步骤3:获取查询结果

执行查询后,我们需要从结果中获取数据。MySQL驱动程序提供了fetchall()方法来获取所有查询结果。这个方法返回一个元组列表,每个元组代表一条查询结果。

# 获取查询结果

results = cursor.fetchall()

步骤4:提取相应字段的值

最后,我们需要从查询结果中提取相应字段的值。假设我们的查询结果包含三个字段:id、name和age。我们可以使用索引来提取这些字段的值。

# 提取相应字段的值

for result in results:

  id = result[0]

  name = result[1]

  age = result[2]

  print(“ID: “, id)

  print(“Name: “, name)

  print(“Age: “, age)

完成以上步骤后,你将能够成功获取MySQL查询结果的相应字段值。