- 博客(55)
- 收藏
- 关注
原创 离线安装matplotlib
xxxxx已经在步骤3下载了,matlplotlib_download文件夹内是存在的。6.如果最终matplotlib安装失败,查看缺失的依赖包xxxxx,手动安装。1.在联网电脑上创建文件夹matlplotlib_download并进入。4.将matlplotlib_download文件夹拷贝到离线主机上。3.下载matplotlib及其依赖的包文件,whl格式。5.依次安装各个依赖包。
2024-08-08 19:37:59 490 1
原创 linux中SSH_ASKPASS全局变量的作用
看源码中,execlp是在fork的子进程中执行的,执行前,其通过stdfd_devnull(1, 1, 0)关闭了子进程的stdout、stderr和stdin的流,再使用closefrom(STDERR_FILENO + 1)关闭了大于STDERR_FILENO的所有流,个人猜测这样可以实现子进程的密码输出流作为ssh密码录入的stdin流。所以,如果我们有需求,ssh登录时,期望自动输入密码,可以使用这个功能来自动后台运行,只需要在运行前指定系统的SSH_ASKPASS全局变量即可。
2024-06-04 18:08:45 731 1
原创 mongodb创建管理账户步骤
创建了guanliyuan的账号,密码为password ,可以使用db.system.users.find()再次查看是否已添加成功。sudo vim /etc/mongod.conf文件,security部分修改如下,并保存退出。5.重新连接mongo数据库。1.数据库进入和查看指令。4.重启mongod服务。3.关闭免密登录配置。
2023-10-20 15:24:50 743
原创 ubuntu16.04离线安装paramiko库
2)从一台已安装python3.5版本的pip3的执行程序拷贝到离线主机中。1)在外网环境下载paramiko安装包及依赖包。4.安装python3-setuptools。3)解压缩并安装setuptools。2)拷贝到待安装离线主机,并安装。2.安装python3-dev。3.安装libffi-dev。3)拷贝到离线主机上并安装。2)下载deb包及依赖包。3)拷贝到离线主机并安装。2)下载deb包及依赖包。3)拷贝到离线主机并安装。5.安装paramiko。3)手动安装pip3。
2023-05-23 16:31:54 974
原创 python中使用try exception时,打印完整出错代码追踪
使用python程序时,不使用try exception时,虽然能打印完整的出错代码追踪,但是会发生异常崩溃导致程序卡死;启用try exception后,一般也只能打印异常类型和异常信息,无法直接获取到出错代码行和代码追踪信息,找到的解决办法有这么两个。
2023-03-28 10:16:37 3932
原创 python常见的魔法函数(函数名前后带双下横线)备注
配合with ... as ...使用,在with语句作用域内,自动在执行第一条语句前执行__enter__语句,自动在执行最后一条语句后执行__exit__函数,最常用的场景是with open('a.txt') as fp,其会在执行完with作用域语句后,自动执行fp.close()操作。这里注意,__next__里面需要实现好退出机制,要不然会进入死循环,这里通过raise StopIteration异常可正常退出循环,使用exit(1)这种方式会导致程序退出,无法执行循环后面的语句。
2022-10-09 11:51:43 905
原创 paramiko库SSHClient的exec_command执行sudo命令时如何输入密码
但远程主机往往是新机或者默认配置,使用paramiko库SSHClient的exec_command远程执行sudo指令时,指令并不能执行成功,查看stdout.read()中无异常,stderr.read()中返回“sudo: no tty present and no askpass program specified\n”的错误打印。2.在执行exec_command时带上get_pty=True。1.sudo指令中带-S执行,并使用stdin输入密码。
2022-09-22 15:02:02 3268 2
原创 使用pip3离线安装openpyxl
因某些设备无法联网,但需要使用python3的openpyxl库实现excel格式文件的读取和写入,故需要离线安装。本人使用的是ubuntu16.04自带的python3.5,故只能使用2.6.4版本,如python3的版本较新,可不用指定版本。2.拷贝openpyxl文件夹到离线设备上,并执行如下操作。1.在可联网的设备上执行下述操作。...
2022-08-09 14:55:39 2486
原创 python3.5版本使用openpyxl报‘NoneType‘ object has no attribute ‘read‘问题
python3.5使用openpyxl时save保存新xlsx失败问题
2022-08-08 21:18:35 3804
原创 pyqt5的窗体resize时height或者width无效问题
1.先参考这个大哥的文章,可以解决问题,原因如文中所说:在窗口时如果w或者h的值小于窗口内某个控件的w,h,那么resize就在这个方向上无效,此时Qt会自动生成一个合适的值。Qt resize设置窗口大小无效的问题; setFixedSize之后如何设置可以放大缩小_承泓风的博客-CSDN博客_qt resize不起作用在窗口resize(w,h)时如果w或者h的值小于窗口内某个控件的w,h那么resize就在这个方向上无效此时Qt会自动生成一个合适的值可以用setFixedSize(w,h)来代替res
2022-06-10 15:45:04 2010
原创 STM32F103配合STM32CubeMX实现SPI读写flash
使用STM32CubeMX软件配置STM32F103ZET6开发板,学习使用SPI读写flash功能
2022-06-08 14:55:07 3015
原创 win10安装ubuntu16.04子系统
1.下载安装包因为windows商店已经删掉了16.04版本的支持,所以需要离线下载安装。打开power shell,依次输入下载和安装指令,如下所示Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile ubuntu.appx -UseBasicPaAdd-AppxPackage .\ubuntu.appxwindows窗口打开Ubuntu-16.04程序,经过几分钟的初始化配置后,会提示配置账号信息,配好后,关闭
2022-06-07 22:37:13 1014
原创 STM32CubeMX工具配置SPI的CRC时数字和表达式转换
在进行SPI配置时,教程中指导要配置为7,如下所示:SPI_InitStructure.SPI_CRCPolynomial = 7; //CRC 值计算的多项式但是STM32CubeMX中选择时,是一个类似如下的表达式:这两个之间是怎样对照的呢?鼠标点击后,会如下图提示:结合其他CRC教程,不难猜出a,b,c为对应的bit位,比如X1+X3,则代表bit1和bit3的值为1,也就是1010,十进制就是10,这里要写7,故表达式为X0+X1+X2,尝试输入该表达式,发现没有报错,生成
2022-05-25 11:33:46 3216
原创 python模块openpyxl常用指令
1.加载xlsx文件from openpyxl import load_workbookwb = load_workbook(xlsx_file)2.获取加载xlsx文件有哪些sheets1)遍历方法for sheet in wb: print(sheet.title)2)先获取sheet名再获取对应的sheet对象sheetnames = wb.sheetnames ##返回的是sheet名称列表for sheet_name in wb: print(sh
2022-05-19 14:19:54 683 1
原创 python matplotlib 使用总结
import randomimport matplotlib.pyplot as pltx = range(100)y = [random.randint(1,10) for i in range(100)]plt.plot(x, y)plt.savefig("test1.jpg")plt.clf() ##清除画布,否则上次的绘制会仍然存在后面的图片中x = range(100)y = [random.randint(1,10) for i in range(100)]plt.plo.
2022-03-24 10:38:51 4319
原创 如何查找文本文件中的非法字符
使用grep时,有时会出现"Binary file (standard input) matches"的问题;这是因为文件中存在非法字符导致被误认为是二进制文件;可以通过grep -a 参数来处理这种包含非法字符的文本文件。不过如果想找到非法字符的位置,该如何操作呢?这里通过简单的python脚本实现:fp = open('tester.log')cnt = 0line = fp.readline()while line: line = fp.readline().st
2022-03-17 16:55:20 1998
原创 通过shell指令修改minicom的hardware flow control模式
问题描述:minicom初始状态,hardware flow control默认配置为Yes。常规修改方式是通过sudo minicom -s进入minicom配置页面,通过鼠标上下箭头、回车按键和F按键实现修改和保存。minicom的命令行指令中,并没有找到登录时指定hardware flow control为No的方法。那能否通过纯shell指令就可以完成hardware flow control或者其他配置项的默认配置修改呢?解决思路:心想既然linux的思想是一切皆文件,那mini
2022-03-17 15:02:43 1928
原创 python3 sqlite3学习总结
1.创建并打开数据库1)创建硬盘数据库conn = sqlite3.connect("test.db")该指令会在本地目录创建test.db文件,数据库关闭重新开启后,历史操作记录仍然存在2)创建内存数据库conn = sqlite3.connect(":memory:")该指令创建的内存数据库仅支持当前操作,关闭重新开启后,历史操作会全部丢失。2.执行sql语句conn = sqlite3.connect("test.db")c = conn.cursor()##创建
2022-03-16 11:06:05 956
原创 ubuntu16.04无法使用ctrl+alt+T打开新的terminal终端解决办法
ubuntu16.04系统自带的python3是3.5版本。自己装了python3.8以后,将/usr/bin/python3软链接到了python3.8上。sudo rm /usr/bin/python3sudo ln -s /usr/bin/python3.8 /usr/bin/python3然后在后续使用时,发现ctrl+alt+T无法打开新的terminal终端了,不过在桌面上鼠标右键还可以打开新的终端。百度谷歌,说是让把/usr/lib/python3/dist-package
2022-02-08 17:47:46 3412 5
原创 更改windows terminal打开ubuntu子系统时的默认路径
windows terminal工具安装后,默认开启路径是win10的当前用户路径,一般在C盘Users的用户路径,这并不符合一般人的使用习惯,C盘经常容易爆掉,所以需要改为ubuntu的用户路径。ubuntu子系统的目录更改参考:更改win10内嵌ubuntu安装1.打开windows terminal,点击左上角下三角标志,点击设置2.先将windows terminal的默认开启改为ubuntu,然后点击“打开JSON文件”打开方式可能略有区别,我安装了visual studio,
2021-09-28 10:27:29 1954
原创 更改win10内嵌ubuntu安装
1.下载LxRunOffline工具,并添加路径到系统变量下载路径:https://github.com/DDoSolitary/LxRunOffline/releases我下载的是LxRunOffline-v3.5.0-msvc.zip解压缩后放到D:\tools\lxrunoffline目录,在系统变量PATH中添加对应路径命令行输入测试指令:LxRunOffline2.更改ubuntu子系统目录LxRunOffline list ##查看当前安装系统名称LxRunOf
2021-09-28 10:07:07 329
原创 ubuntu16.04+python2.7+pyqt5
1.install and update pipsudo apt install python-pipwget https://bootstrap.pypa.io/pip/2.7/get-pip.pypython get-pip.py2.install qt5wget https://download.qt.io/official_releases/qt/5.12/5.12.11/qt-opensource-linux-x64-5.12.11.runsudo ./qt-opensou
2021-08-12 17:15:14 756 1
原创 mongodb在ubuntu系统的安装使用
1.安装mongodbsudo apt install mongodb2.启动mongod服务sudo systemctl start mongod3.设置为上电自启动mongod服务sudo systemctl enable mongod4.创建各种账号进入admin管理数据库mongouse admin创建超级用户:db.createUser({user:"db_root",pwd:"db123",roles:["root"]})创建所有数据库的用户管理账号:d.
2021-08-09 11:32:00 1609
原创 ubuntu系统重启系统丢失问题
1.问题现象工作电脑系统为ubuntu16.04,昨天早上使用时,突然发现多出来一个100Mb的盘符,类似新增了一个硬盘,进入后可以看到ubuntu系统的各个目录结构及相关文件,但是并不wan'zhe
2021-06-16 15:46:43 2493
原创 2021-05-21 python中curses基本用法
有时候linux系统没有界面,可能需要在terminal终端完成程序的交互和状态显示,C语言的ncurses支持命令行界面程序开发,curses是基于ncurses实现的python终端界面库。本文实现一个简单的demo小程序,方便初学者学习和使用。首先上demo主程序#-*- coding: UTF-8 -*-import cursesimport localelocale.setlocale(locale.LC_ALL, '')def terminal_display(stdsc
2021-05-21 12:00:43 2545 1
原创 mongodb数据库的备份与恢复
1.备份数据登录原mongodb数据库,执行dump指令:# 创建备份数据库目录mkdir db_bak# 将mongodb数据库完整备份,db_bak为备份文件保存目录mongodump -o db_bak# 将备份数据库目录打包成db_bak.tgz,方便备份和移动tar -zcvf db_bak.tgz db_bak2.将db_bak.tgz文件拷贝到新的数据库环境或者待恢复设备(保证数据库配置一致即可),输入下述指令完成数据库文件恢复# 解压缩数据库文件tar -zx
2021-05-06 18:10:21 259
原创 ubuntu查询硬盘使用情况及文件或文件夹大小命令
ubuntu查询硬盘使用情况及文件或文件夹大小命令1. 磁盘空间使用情况2. 当前目录所有文件及文件夹大小3. 查看单个文件或文件夹大小使用ubuntu系统时,经常要查系统剩余空间,以及目录大小这是常用指令:1. 磁盘空间使用情况df -h2. 当前目录所有文件及文件夹大小## du --max-depth=1 -h的简化版本du -hd 1 3. 查看单个文件或文件夹大小du -sh filedu -sh dir...
2021-04-28 15:08:37 1552
原创 STM32+libopencm3程序开发入门教程
1.编译环境准备gcc-arm-none-eabi是GNU项目下的软件,是一个面向裸机arm的编译器。ubuntu16.04系统,自带gcc-arm-none-eabi,查看版本命令arm-none-eabi-gcc -v官方版本下载链接:https://launchpad.net/gcc-arm-embedded/+download参考链接:https://blog.csdn.net/zhengyangliu123/article/details/547834432.makefi.
2021-04-26 17:39:03 2446
原创 ubuntu系统使用svn常用命令
个人感觉,svn是轻量级代码管理工具,适合3-5人小团队使用,冲突少,提交和下载也够方便。不过,网上关于svn使用的教程,大多数是windows系统的图形化管理工具TortoiseSVN,而linux系统svn的常用指令却七零八碎。这里对自己在ubuntu中使用svn的常用命令做一个简单总结,便于自己和别人查阅。1.安装svnsudo apt install subversion2.下载源码假如svn服务器地址为http://127.0.0.1:23001/svn,我们要下载test
2021-03-03 16:05:46 1618 1
原创 服务器BMC管理工具ipmitool的安装和使用
大型服务器底层运行BMC管理系统,用于管理系统硬件资源,进行机箱风速调节等,BMC一般配有管理网口。有时上层系统启动后,我们想通过上层系统管理BMC的IP地址,可以使用ipmitool工具,这里介绍一下impitool常用命令。1.安装ipmitool工具sudo apt install ipmitool2.确认是否安装好(非必须)lsmod|grep ipmi查看是否有如下几项,如有,则不需要关注步骤2如不存在上述文件,请执行下属指令后,再次查看(注意,个人电脑安装ipmit.
2021-03-03 15:09:35 6411 2
原创 ubuntu16.04 删除python3导致桌面任务栏和terminal不可用问题解决办法
系统自带的python3为3.5.2版本,想装3.5.1版本,所以手动删除了python3.5.2,重启后发现桌面能进入,但是鼠标变成了一个大叉,且任务栏、上方的状态栏都不见了,右键也没了terminal命令终端选项。出现该问题后,解决办法:1.ctrl alt F1进入终端界面2.把软件源改回ubuntu原生源(我之前改成了阿里源和清华源,导致进行下述操作时经常有依赖问题,改回原生源后问题未在出现,可以使用ssh工具或者scp的方法把源拷贝进去)# deb cdrom:[Ubuntu 1
2021-01-21 16:19:20 1585
原创 rsync的配置和使用
ubuntu16.04环境,为了快速同步和更新测试机,采用rsync方式实现服务器和客户机之间的同步和更新。ubuntu16.04默认已安装rsync,无需安装即可使用,以下为配置步骤:sudo vim /etc/default/rsync#将RSYNC_ENABLE改为true:#RSYNC_ENABLE=truesudo cp /usr/share/doc/rsync/examples/rsyncd.conf /etcsudo vi /etc/rsyncd.conf#将path指定
2020-09-29 18:04:46 274
原创 svn本地和服务器版本号一致,但是本地文件和服务器文件不同,该怎么解决
公司搬迁,svn服务器变更了IP,在测试机上更新svn的服务器IP后,更新代码时,出现一个奇怪的问题:使用svn up指令更新了本地代码,显示版本号为1630,服务器最新版本也是1630;但是服务器1630版本,目录中仅有三个文件,本地代码中,却显示有之前删除掉的10个废弃文件;尝试删除废弃的10个文件或者把整个目录都删掉,重新update,仍然会下载废弃的10个文件;svn list查看,显示只管理着1630的三个新文件;用svn revert -R .还原整个工程,重新svn up,
2020-09-28 11:04:51 2274
原创 ubuntu使用离线安装包安装软件的办法
我们以openconnect软件为例1.在可联网电脑进行如下操作sudo apt --purge remove openconnectsudo apt -d install openconnectsudo mkdir opensudo cp -r /var/cache/apt/archives opentar zcvf open.tgz open2.拷贝open.tgz到无法联网ubuntu系统,进行如下操作tar zxvf open.tgzcd opensudo dpkg
2020-09-28 10:50:15 1712
原创 nautilus打开窗口报warnings问题解决方案
ubuntu16.04系统,直接使用nautilus或者python中使用webbrowser模块的webbrowser.open(path)时,命令行会弹出这样四行打印信息:(nautilus:14836): GLib-GIO-CRITICAL **: g_dbus_interface_skeleton_unexport: assertion 'interface_->priv->connections != NULL' failed(nautilus:14836): GLib-GI
2020-09-02 14:35:44 1365
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人