Linux用sudo执行命令出现找不到命令
问题现象:直接使用当前用户进行命令执行,命令执行正常,但是当使用sudo+命令的形式执行后出现-bash: xxx: command not found(命令找不到)的情况。
原因:sudo执行命令时,有效的PATH配置文件是 /etc/sudoers文件
解决方式:vim 打开sudoersvim /etc/sudoers找到如下行
1Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
再其后添加可执行文件目录然后保存即可。注 ...
Centos7网络配置文件
Centos7网络配置文件位置
cd /etc/sysconfig/network-scripts/
通常默认的配置文件名为 ifcfg-ens33打开该配置文件内容如下:
TYPE=Ethernet 网卡类型:以太网PROXY_METHOD=none 代理方式:关闭状态BROWSER_ONLY=no 只是浏览器(y ...
python日志系统框架模板实现
python利用loguru模块实现简易的通用代码日志系统(utils)实现主要通用功能:python日志同时输出到控制台(屏幕)和文件。(日志添加多个handler)日志按功能划分为不同文件。
此处再提及一些新入坑loguru遇到的一些小问题,在代码中都有实现。loguru如何格式化控制台输出日志(loguru修改了format后格式只在文件中生效,未在控制台生效)loguru如何既输出到控制台(屏幕)又输出到文件。loguru如何每隔多少大小分成新的log文件。loguru如何实现日志 ...
python进程池中使用队列共享数据
运行系统为Linux
进程池中使用队列共享数据进程池中使用队列共享数据需要使用Manager()内的Queue()方法。multiprocessing内部的Queue是针对父子进程间使用,而使用进程池,进程池内的进程并不一定会满足父子关系。
queue.Queue()队列通常用于线程之间,可线程之间共享。
multiprocessing.Queue()队列通常用于进程之间,可父子进程间数据共享。线程之间也可用此方法进行线程之间数据共享。
multiprocessing.Manag ...
python实现并发集群计算几种方式的测试
python开发过程中免不了会用到并发处理数据的场景,通常在i/o密集型的情况下我们可以采用python多线程进行处理,来达到批量快速处理的效果,但是对于计算密集型的场景来说,python的多线程显得无能为力。背上上面问题锅的主要原因是由于python自身的,GIL即全局解释器锁,使其同一时间只能有一个线程在执行字节码。
处理并发/计算密集型处理可采用多进程进行来充分利用系统的cpu。必要时可采用分布式进行处理。
以下代码对多进程的几种实现方式进行速度的对比。· multiprocess模 ...
docopt实现获取终端命令参数实现样例
编写安全或其他脚本工具时,需要终端执行一些参数,保证可靠以及规范,可采用docopt进行实现,对于干扰参数或错误输入进行过滤和报错。实现较为完美的控制台参数控制。
docopt实现样例:
12345678910111213141516171819202122232425262728293031323334from docopt import docoptdef main(): USAGES = """xxxxxx POC. Usage: ...
多进程中的进程心跳与进程终止实现思路
多进行执行某些任务的时候,希望进程有心跳信号来判断进程是否还存在。同时希望多进程情况下,主进程死亡后,没有游离的孤儿进程/线程。避免出现主进程退出后,依然后无法终止的程序在执行。(进程之间共享变量,通信)使用multiprocessing.Event()方法实现。
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647import multiprocessingimport ...
定时执行任务与到达限制执行任务组合demo
期望实现效果:某一任务,需要定时执行插入数据操作,或者是当存储的数据到达某一限度后也需要插入数据操作。case:数据处理归类后需要放入数据库,想要每满10条后进行数据库写入操作,或者是,10条一直没有存储够,但是等了很久,想要没满10条,但是到达一定时间后也要进行数据库写入操作。
每隔多少时间执行一次更新操作
123456789101112131415161718192021222324252627282930import timeimport threadingimport rando ...
数据负载均衡demo
期望实现的demo效果:多个线程/进程消费一个数据列,能够让各线程/进程去分担压力,避免出现一个线程/进程工作,多个线程/进程围观的情况。(数据负载均衡演示)
1234567891011121314151617181920212223242526272829303132333435363738import queueimport threadingimport timeimport randomdef thread_entity_core(thread_q): while True: ...
JavaGUI编程一
GUI 图形用户接口(Graphical User Interface)
已不在使用的基础类库AWT(Abstract Window Toolkit),抽象窗口工具包。缺点,可移植性兼容性差,是个重量级组件,使用麻烦,并且图形界面不够美观功能有限。Swing在AWT的基础上进行了补充和改进,进行了AWT增强。来满足GUI设计需求。
Swing概述继承自Container类,然后根据GUI开发的功能扩展了2个分支如下:容器分支(包括Window窗口和Panel面板):实现图形用户界面窗口容 ...