练习目的
读取前一列的数据,如果包含特定字符,则在后面一列进行描述,这个场景可以对应到Linux 的操作命令的分析中
原始数据如下
操作命令 | 命令描述 |
[admin@cms_admin yuan.zhang]$ ll | |
[admin@cms_admin yuan.zhang]$ cd | |
[admin@cms_admin yuan.zhang]$ vim /etc/passwd | |
[admin@cms_admin yuan.zhang]$ ./hybris.sh stop | |
[admin@cms_admin yuan.zhang]$ ./hybris.sh start | |
Login | |
Logout | |
cat /var/log/tomcat.log | |
tail /var/log/tomcat.log |
直接给出python 源码
import xlwings as xw
app=xw.App(visible=True,add_book=False)
wb=app.books.open('data.xls')
sheet=wb.sheets[2]
# 统计使用的行数
line=sheet.used_range.shape[0]
data=sheet.range('A1','A'+str(line)).value
index=0
for i in data:
index+=1
row_index = 'B' + str(index)
if "]$" in i and 'll' in i:
sheet.range(row_index).value="查看目录文件信息"
if "]$" in i and 'vim' in i:
sheet.range(row_index).value="查看文件内容,有可能修改"
if "]$" in i and './' in i and '.sh' in i:
sheet.range(row_index).value = "服务启停"
# 设置背景色
sheet.range(row_index).color=(255,0,255)
if 'Login' in i:
sheet.range(row_index).value = "登录"
if 'Logout' in i:
sheet.range(row_index).value = "登出"
if 'tail' in i or 'cat' in i:
sheet.range(row_index).value = "查看文件内容"
if 'sz' in i or 'rz' in i:
sheet.range(row_index).value = "文件上传下载"
wb.save()
wb.close()
app.quit()
最终处理之后的excel 表格如下:
操作命令 | 命令描述 |
[admin@cms_admin yuan.zhang]$ ll | 查看目录文件信息 |
[admin@cms_admin yuan.zhang]$ cd | |
[admin@cms_admin yuan.zhang]$ vim /etc/passwd | 查看文件内容,有可能修改 |
[admin@cms_admin yuan.zhang]$ ./hybris.sh stop | 服务启停 |
[admin@cms_admin yuan.zhang]$ ./hybris.sh start | 服务启停 |
Login | 登录 |
Logout | 登出 |
cat /var/log/tomcat.log | 查看文件内容 |
tail /var/log/tomcat.log | 查看文件内容 |
上面源码中都进行了备注,如果有不清楚的可以评论区交流