最近通过 PyQt5 设计了一个下载服务器指定日期日志文件的程序,里面有些有意思的技术点,现在做一些分享. PyQt5 是一套 Python 绑定 Digia Qt5 应用的框架,是最强大的 GUI 库之一,使用 PyQt5 我们能够很容易的开发桌面应用,接下来我们将用它来开发一个下载服务器日志文件的小程序. 前期准备 软件 QT5 Python 模块 PyQt5==5.15.7 paramiko==2.9.2 PyCharm 添加扩展工具 PyUIC PyUIC 扩展用于将使用 Qt Desi…
在shell编程中经常需要获取远程服务器文件.手工操作中使用scp命令完成.为避免脚本执行scp输入密码进行交互,需先建立本机服务器当前用户和远程服务器指定用户的信任关系.具体代码见操作实例,重点关注getRemoteServerFile()函数,编程中可单独提取使用. 基础知识 1.scp,用于远程文件拷贝 #本地文件或目录上传到远程服务器,文件和目录用绝对路径 scp local_file remote_username@remote_ip:remote_dir scp local_file…
1.判断一个文件的常见形式为 if [ -f filename ]  #此处有-e和-f的区别 注意: 1)中括号之间的空格: 2)filename最好是绝对路径,在判断远程服务器中文件是否存在时尤为重要,因为集群之间有路径的变化. 2.链接远程服务器 写法为:if [ ssh root@${ip} -f filename ]会报错:[: too many arguments 改为: if [ "ssh root@${ip} -f filename" ]即可. 注意: 1)此处的双引号…
一.PyCharm实现远程调试代码 1. 和远程服务器建立连接,tools àDeploymentàConfiguration 2. 点击“+”号,按照远程服务器信息配置信息 点击“Advanced options”,修改文件编码为utf-8 3.在Mappings的Tab设置映射关系 4. 然后通过下面步骤即可找到远程代码并进行编辑和提交 切记!勾选 Automatic Upload   实现本地自动同步到远端 二.  设置Python版本信息 1.在Pycharm中选择File -> Set…
使用的是springboot的项目,只是贴出主要配置与类,代码较长,可以先折叠: 参考:https://www.cnblogs.com/xyzq/p/7049369.html 操作工具类SftpUtils: public class SftpUtils { private static final Logger log = LoggerFactory.getLogger(DownLoadFTPService.class); private String host;// 服务器连接ip priva…
上传本地文件到服务器scp 本地路径 用户名@远程服务器ip:远程路径 下载文件 scp 用户名@远程服务器ip:远程路径 本地路径-r 是上传下载本地目录到远程 远程文件…
公司买的一款企业应用软件,所有透过应用操作DB的操作都会生成有日志,日志是以文本文件的形式存放在服务器上,后缀名为*.log.1,*.log.2之类的,软件本身也提供功能查询这些日志,但这个查询的功能非常有限,没有筛选功能,比如我要查在某段时间内谁操作了A表的时候,只能一页一页翻,这显示是无法接受的,因此碰到这种情况,只能直接到服务器上查看日志,每次连到服务器也挺麻烦的,因此想着是否可以透过Web远程来查看这些服务器日志. 因为服务器上已经有IIS,我的解决办法就是利用IIS来实现: 1.在II…
一.问题产生 对于远程服务器,我习惯把文件写好后直接上传到服务器,也有很多方法可以做到,我现在比较习惯使用putty自带的pscp直接去传. 二.解决办法 1.首先在本地下载的putty文件下看是否有pscp. 2.打开windows终端. 键入命令进入到Putty文件下,然后输入 pscp D:\usr\douwnload\hello.txt root@000.000.000:/usr/myfile 其中 root指的是远程服务器名,@后接ip地址其他的比较好懂. 这就是上传成功了.…
一.开始的话 使用python简单的实现websocket服务器,可以在浏览器上实时显示远程服务器的日志信息. 之前做了一个web版的发布系统,但没实现在线看日志,每次发布版本后,都需要登录到服务器上查看日志,非常麻烦,为了偷懒,能在页面点几下按钮完成工作,这几天查找了这方面的资料,实现了这个功能,瞬间觉的看日志什么的,太方便了,以后也可以给开发们查日志,再也不用麻烦运维了,废话少说,先看效果吧. 二.代码 需求:在web上弹出iframe层来实时显示远程服务器的日志,点击stop按钮,停止日志…
功能:用websocket技术,在运维工具的浏览器上实时显示远程服务器上的日志信息 一般我们在运维工具部署环境的时候,需要实时展现部署过程中的信息,或者在浏览器中实时显示程序日志给开发人员看.你还在用ajax每隔段时间去获取服务器日志?out了,试试用websocket方式吧 我用bottle框架,写了个websocket服务端,浏览器连接到websocket server,再用python subprocess获取远程服务器的日志信息,subprocess,就是用Popen调用shell的sh…