- 博客(351)
- 资源 (1)
- 收藏
- 关注

原创 mingw64怎么写make(已实现)
一个linux程序员心血来潮,因为工作原因,又玩window下的linux编程。1,怎么安装离线版本的mingw(即mingw64,在线版本的习惯被叫做mingw.org),这么不详细说,自行搜索。2,我先个测试小例子。3,我的makefile,这个makefile的写法还和linux上的不同,有点像goto语句,函数。4,make编译,执行。...
2020-08-26 22:38:17
1941

原创 (mqtt学习6)python实现遗嘱,拔网线之后,可以发出遗嘱消息
import paho.mqtt.client as mqttHOST = "192.168.1.202"PORT = 1883def on_connect(client, userdata, flags, rc): print("successfully connected with result code "+str(rc))def Test(): client = mqtt.Client() client.on_connect = on_connect c.
2020-08-12 09:00:47
1143

翻译 (mqtt学习3)mqtt的用paho库自动重连设置
至于怎么连接,订阅,发布的,这里就不重复说了,网上很多,详细看官方文档,https://www.eclipse.org/paho/files/mqttdoc/MQTTAsync/html/struct_m_q_t_t_async__connect_options.html#a7902ce4d11b96d8b19582bdd1f82b630 1,特别说明,重连...
2020-03-28 15:34:02
3150
12

原创 debian9.9(linux)使用docker方式使用微信和QQ(简单先进)
在linux上使用微信和QQ并不算什么新鲜事,之前采用wine,github,crossover,snap等的方式都安装过,其中最方便的还是github上的下载,然后双击运行,就可以了,但是它貌似已经不维护了,github上的更新时间是2年前,而且我觉得现在使用docker的方式也比那个好一点。docker客户端给docker守护进程发送命令,docker守护进程从远端的仓库中获取镜像,使用镜...
2019-07-06 16:50:32
11201
15

原创 python学习36:给IDLE添加行号(采用IDLEX的LineNumbers.py)python3.8也可以用(亲测有效)
1,下载这个链接我在360安全浏览器上有时打不开,我用ctrl+f5就可以打开了。链接是:http://idlex.sourceforge.net/extensions.html2,解压说明,如果谁喜欢用IDELX的话,就直接双击解压文件下的idlex文件就好,如下:如果喜欢IDLEX的话,直接用就是了,以下的内容不需要再阅读,但是我不喜欢这个界面,所以在py...
2019-03-22 18:59:14
13253
36

原创 vim F7添加作者信息,文件修改完更改最后时间
必须是vim,不能是vi。再更新,使用函数():set nuset nocpset tabstop=4set softtabstop=4set shiftwidth=4set noexpandtabsyntax onfunction FileHead_C() call append( 0,"/***************************************...
2018-07-21 18:49:42
1275
2
原创 使用命令行把debian变成实时系统
1,搜索guoyanzhang@debian:~$ apt-cache search linux-image-rtlinux-image-rt-amd64 - Linux for 64-bit PCs (meta-package), PREEMPT_RTlinux-image-rt-amd64-dbg - Debugging symbols for Linux rt-amd64 configuration (meta-package)2,安装sudo apt-get install li
2021-12-04 20:31:02
1119
原创 在自己本地原有的镜像基础上用dockerfile加一下库进去
1,首先我本地已经安装了docker,且本地有一个制作好的镜像2,写dockerfileFROM huawei-ec-iot/osc-sdk:2.0.0COPY ./my_lib/* /usr/local/lib/RUN ldconfigCOPY ./sources.list /etc/apt/sources.listRUN apt-get updateRUN apt-get upgrade | 'bin/echo' -e "\ny\n"最后一行的作用是输入y,但是好像没什么作
2021-05-17 17:06:04
515
原创 用pandas新建excel并设置表头
代码如下:import pandas#创建一个名字为excel_file_name的excel文件#这里把表头设置为(姓名name,年龄age,性别gender,城市city,技能skill) def create_form(excel_file_name): form_header = ['姓名name', '年龄age', '性别gender', '城市city', '技能skill'] df = pandas.DataFrame(columns=form_heade.
2021-02-17 17:53:04
8414
1
原创 python中关于__new__和__init__的个人理解
先看段代码:class Student: def __new__(cls, name): print(cls) return super().__new__(cls) def __init__(self, name): self.name = names = Student("Rui")print(s.name)运行结果:<class '__main__.Student'>Rui看到了什么?1,c.
2021-02-04 11:29:41
198
1
原创 python中关于object和type的个人理解
python里面一切都是对象,说到对象,那每个对象都有自己的类型,那既然说一起都是对象,那实例化对象的类型也是对象,即:看讨论type和object之间的关系:1,先看看它们的类型是什么?>>> object.__class__<class 'type'>>>> type.__class__<class 'type'>可以看到它们都是type类的,对应上图的关系,实例化对象是object,实例化对象的类型是type,那t
2021-02-04 11:06:10
234
1
原创 debian10将系统软件包和docker的软件源改成国内源
用如下命令更新系统包时,发现特别慢,是因为系统默认使用国外源,现在改成国内的sudo apt-get update && sudo apt-get dist-upgrade修改/etc/apt/sources.list文件为如下内容:deb http://mirrors.tuna.tsinghua.edu.cn/debian/ buster maindeb-src http://mirrors.tuna.tsinghua.edu.cn/debian/ buster m...
2021-02-02 09:08:22
1079
原创 python3连接到sql server数据库,检查是否存在某个数据库,没有则创建
代码已经测试过了,成功!import pymssql #引入pymssql模块 def conn(): ret = pymssql.connect(host='DESKTOP-4CDQOMR', user = 'sa', password = '123456') #服务器名,账户,密码 if ret: print("连接到数据库成功!") else: print("连接到数据库失败!") return ret .
2021-01-24 22:36:41
743
原创 debian10上安装samba服务器
1,安装sudo apt-get install samba2,配置## Sample configuration file for the Samba suite for Debian GNU/Linux.### This is the main Samba configuration file. You should read the# smb.conf(5) manual page in order to understand the options listed# he
2021-01-20 10:24:30
1058
原创 同时使用动态库和静态库时怎么写makefile
项目经验。关键语句: $(CC) -L $(LIB_FOR_SRS) -o $(OUTPUT_DIR)/$(TARGET) $(OBJS) -Wl,-Bstatic -lssl -lcrypto \ -Wl,-Bdynamic $(DYNAMIC_LINK_OPTION) $(STATIC_LINK_OPTION)也可以换成(链接): $(LD) -L $(LIB_FOR_SRS) -o $(OUTPUT_DIR)/$(TARGET) $(OBJS) -Wl...
2021-01-19 10:33:02
528
原创 linux环境使用c语言获取当前目录下有哪些文件,并打印它们的名字
代码:#include <sys/types.h>#include <dirent.h>#include <unistd.h>#include <stdio.h>#include <string.h>#include <stdlib.h>#include <math.h>#include <time.h>void ReadDir(void){ DIR *dir; str.
2021-01-13 15:32:25
1372
原创 linux环境使用c语言获取系统时间,并拼接成字符串
代码: void GetLocalTime(void) { time_t rawtime; struct tm *timeInfo; char newFileName[30] = {0}; memset(newFileName, 0, sizeof(newFileName)); time(&rawtime); timeInfo = localtime(&rawtime); sprintf(newFileNam.
2021-01-13 15:27:42
529
原创 使用fopen/fwrite/fread/fseek/fclose对文件从头读写整型数
#include <stdio.h> #include <stdlib.h> #include <errno.h> int main(void) { FILE *fp = fopen("./index", "w+"); int t = 3; int ret = 0; int r = 0; fseek(fp, 0, SEEK_SET); ret = fwrite(&t, sizeof(int..
2021-01-13 15:19:17
580
原创 用ssms建sql server数据库和python连接到数据库
本文内容:1,用ssms建sql server数据库2,用pthon连接到新建的数据库一、用ssms建数据库1,ssms是什么?SQL Server Management Studio (SSMS) 是一种集成环境,用于管理从 SQL Server到 Azure SQL数据库的任何 SQL基础结构。桌面图标如下;2,打开ssms,登录,用Sql Server Authentication的方式登录,记住Server name、login、password,等一下要用。3,
2021-01-10 21:51:20
855
原创 python3修改pip执行环境和安装软件源
pip是 Python包管理工具,该工具提供了对Python包的查找、下载、安装、卸载的功能。Powershell是运行在windows机器上实现系统和应用程序管理自动化的命令行脚本环境。1,到Python的安装目录下,进入到Scripts,发现有如下几个.exe,windows可执行文件,我们这里暂时只关注pip3.exe.2,键盘shift+鼠标右击,可以出现"此处打开Powershell窗口"3,进入到powershell中4,用pip3安装easygui模块,执行..
2021-01-09 09:48:41
561
原创 python3入门部分知识点理解
1,IDLE是什么?# IDLE is Python’s Integrated Development and Learning Environment.# IDLE是Python的集成开发和学习环境,可以利用它方便地创建、运行、测试# 和调试Python程序。2,#是什么?为什么后面跟的内容没有出现在运行结果里面?#是单行注释。注释是为了解释该部分代码是做什么的,辅助理解,并不参与运行3,那我要是多行注释怎么办?'''用3个单引号,注意是英文的单引号,不是中文的最前面
2021-01-08 16:47:19
192
原创 在windows10上写自己的第一个python代码
第一步:有的人安装python的时候,没有选择生成桌面快捷方式,可以在桌面左下角开始的位置打开第二步:在开始的所有程序里面找到python的IDLE,拖拽到桌面第三步:双击桌面的idle开始写自己的第一个python代码注意这里是单引号,代码解释:打印“我是小仙女张瑞”。第四步:保存运行保存:ctrl+s保存也可以,左上角的file里面有save也可以保存,保存到自己指定的目录中,我这里保存为:F:\zhangrui中,文件命名为first_code,文件默认后缀名为.p
2021-01-08 11:00:27
735
原创 关于“W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168d-1.fw for module r8169”问题的解决
我的系统是:guoyanzhang@debian:/lib/firmware$ lsb_release -aNo LSB modules are available.Distributor ID: DebianDescription: Debian GNU/Linux 10 (buster)Release: 10Codename: buster出现问题:W: Possible missing firmware /lib/firmware/rtl_.
2020-10-26 09:16:24
1795
原创 关于linux的日志管理学习
我主要是玩debian系列,所以全篇以debian为主,其它linux系统不确定是否可以适用。本文涉及到三个主要的东西:cron,rsyslog,logrotate。一,cron、rsyslog、logrotate的介绍1,cron的介绍2,rsyslog的介绍3,logrotate的介绍二,cron、rsyslog、logrotate的安装1,cron的安装2,rsyslog的安装3,logrotate的安装三,cron、rsyslog、logrotate的使用
2020-10-24 10:04:47
186
原创 (C语言进阶1)main函数传递整数
main函数也可以传递参数的,大家都清楚,但是argv[][]这个是字符串,我们有时候要传递整数怎么办?答:把字符串转换成整形。比如下文代码中,关键代码: else if ((argc == 2) && (argv[1][0] == '1')),执行的命令行是:./a.out 1.即就是2个参数,argv[0] 是./a.out,argv[1]是“1”,那argv[1][0]就是'1',注意这里的单双引号,是指字符串和字符。依次类推,如果执行的命令行是./a.out 1234,即..
2020-10-23 15:14:10
728
原创 linux关于ftp使用的问题总结
1,登陆到ftp服务器,get时发现:ftp: open file handle failed的问题。原因是:下载的文件在本地有一份,即同名,但是格式不同,所以不能覆盖下载。
2020-09-25 09:36:29
292
原创 关于vsftpd服务器搭建的若干问题总结
每次搭建都出问题,改一下也出问题,我都要炸了,这里把觉得写个长期更新的大总结。1,我现在的配置(这个配置是可以登陆进去看的,但是不能上传)root@debian:~# cat /etc/vsftpd.conf#begin my configurationslisten=YESlisten_address=192.168.1.108connect_from_port_20=YESanonymous_enable=NOuse_localtime=YESlocal_enable=YESl
2020-08-06 10:13:52
341
原创 (debian10)No manual entry for pthread_mutex_lock问题的解决
我的操作和系统信息如下:gyz@debian:~$ man pthread_mutex_lockNo manual entry for pthread_mutex_lockgyz@debian:~$ sudo apt-get install manpages-posix-devReading package lists... DoneBuilding dependency treeReading state information... DoneE: Unable to locate p
2020-07-10 18:24:04
451
1
原创 git学习1:配置下载自己的github代码
我已经在github上建了项目了,这里不在重复,换了个电脑,我要下载下来修改下。1,生成密钥ssh-keygen -t rsa -C "yanzhang.guo@qq.com"2,把公钥放到github上去 cat ~/.ssh/id_rsa.pub3,就可以下载了git clone git@github.com:guoyanzhang0817/playMQTTing.git4,修改提交代码前的配置:git config --global..
2020-06-12 17:29:55
257
原创 解决curl: (25) Failed FTP upload: 553的问题
把一个文件上传到ftp服务器时,发现curl: (25) Failed FTP upload: 553的问题,后来发现是服务器上那个文件夹权限导致的,换了个文件夹就好了。
2020-05-28 10:39:31
1543
转载 (sqlite3学习2)sqlite中的限制:数据库大小、表数、列数、行数、参数个数、连接数等
一、参考网址SQLite中的限制(官网):https://sqlite.org/limits.html运行时限制类别(官网):https://sqlite.org/c3ref/c_limit_attached.html#sqlitelimitcolumn二、详解1、查看、设置sqlite限制命令.limitsqlite> .limit // 显示或设置数据库限制信息:SQLITE_LIMIT length 1000000000 // 字符串或BLOB...
2020-05-26 09:55:23
5463
原创 (json-c学习11)解析嵌套的数组
其它什么头文件,编译什么的看前面的部分就好。代码如下:661 void ParsingTest(void)662 {663 int fatherLen = 0;664 int sonLen = 0;665 const char *str = "[{\"gp\":1,\"body\":[{\"ln\":1,\"sd\":2},{\"ln\":2,\"sd\":3}]},{\"gp\":3,\"body\":[{\"ln\":6,\"sd\":7},{\"ln\":8.
2020-05-22 17:42:50
664
原创 (mqtt学习2)编译安装paho
1,源码下载:https://github.com/eclipse/paho.mqtt.c解压:guoyanzhang@debian:~/test$ unzip paho.mqtt.c-master.zip2,安装编译用的库guoyanzhang@debian:~/test/paho.mqtt.c-master$ sudo apt-get install build-essential gcc make cmake cmake-gui cmake-curses-guiguoyan
2020-05-21 15:57:20
399
原创 (mqtt学习1)安装mosquitto代理者和客户端
1,介绍mqtt是个网络协议,mosquitto是一个开源的mqtt broker,当然了它也有它的客户端,命令行和API都有,但是一般用它的命令行,而客户端API用paho的,paho是一个开源的mqtt client。mosquitto 源码链接:https://github.com/eclipse/mosquittopaho 源码链接 :https://github.com/eclipse/paho.mqtt.c2,安装代理者和客户端我这里是debian10.guoyan..
2020-05-21 14:55:17
294
原创 (json-c学习9)读写json格式的文件
读写的文件,有普通的json格式的文件,还有数组形式的json格式的文件。读普通的文件使用:guoyanzhang@debian:~/test$ cat test.json{"group":1,"test":2}读数组形式的文件使用:guoyanzhang@debian:~/test$ cat test1.json[{"group":1,"test":2},{"group":2,"test":3},{"group":12,"test":13},{"group":12,"test":13}]
2020-05-21 10:40:14
528
原创 (json-c学习8)关于Segmentation fault的一个问题
开始的时候,我以为是json_tokener_parse导致的Segmentation fault的问题,后来问作者,发现是json_object_object_foreach的问题。因为如果是封装成一个函数给别人用,别人可能会传递一个非json的字符串过来,那程序就会崩了,为了防止程序崩,要加个判断。我在github上问作者的链接:https://github.com/json-c/json-c/issues/623解决办法,添加了425-430共6行。407 void TestSeg.
2020-05-20 09:06:17
486
原创 debian10杀毒软件安装和使用
官网地址:https://wiki.ubuntu.org.cn/ClamAV1,安装sudo apt-get install clamavsudo apt-get clamav-daemon2,更新病毒库sudofreshclam3,扫描病毒到指定文件夹sudo clamscan -r / --move result 说明:-r / 扫描根目录--move result 把病毒文件移动到result文件夹下4,删除病毒文件sudo rm result/*.
2020-05-13 18:10:37
803
1
原创 gdb和gdbserver工具的使用简介与交叉编译
一,介绍 嵌入式系统资源有限性,一般不能直目标系统上进行调试,所以很多情况下都是远程调试,就目前而言,嵌入式Linux系统中,主要有三种远程调试方法,分别适用于不同场合的调试工作: a,用ROM Monitor调试目标机程序; b,用KGDB调试系统内核; c,用gdbserver调试用户空间程序。 这三种调试方法的区别主要在于,目标机远程调试stub 的存在形式的不同,而其设计思路和实现方法则是大致相同的。而我们最常用的是调试应用程序,就...
2020-05-12 19:00:44
737
转载 (json-c学习7) linux c语言释放json对象,防止内存泄漏
实际项目中发现Json-C用法不当导致的内存泄露、踩内存问题,大都是因为不清楚下面几个接口的用法。以下分析基于https://github.com/json-c/json-c( 0.12.1 release)。1. json_object_new_object生成的对象要不要释放int main(int argc, char **argv){ struct json_object* obj; mtrace(); obj = json_object_new_object();...
2020-05-09 16:54:03
1844
原创 debian10安装httpd服务器(命令行安装)
在终端执行guoyanzhang@debian:~/test$ sudo apt-get install httpd输出如下信息意思是选择一个安装那么我选择apache2来安装guoyanzhang@debian:~/test$ sudo apt-get install apache2guoyanzhang@debian:~/test$ sudo apt-get install apache2-dev查看安装是否成功sudo systemctl status ap
2020-05-09 11:30:26
3716
Linux串口读写配置,包括232和485.txt
2020-04-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人