
linux系列
文章平均质量分 50
洗尽沉滓
读书即未成名,究竟人品高雅。
修德不期获报,自然梦稳心安。
展开
-
2022-03-07 golang获取文件名、函数名、行数
golang获取文件名、函数名、行数原创 2022-03-07 11:55:03 · 1354 阅读 · 0 评论 -
【golang基础】channel的使用
channel的使用整理,创建、监听、释放原创 2022-01-13 16:32:28 · 787 阅读 · 0 评论 -
【golang基础】使用go获取终端软件窗口的长宽大小
Golang获取终端软件的窗口长宽大小原创 2021-12-28 18:25:34 · 1958 阅读 · 0 评论 -
【golang基础】golang环境变量
go语言环境变量原创 2021-12-08 17:48:54 · 886 阅读 · 0 评论 -
【linux基础】安装openresty
安装openresty原创 2021-12-07 10:05:59 · 665 阅读 · 0 评论 -
linux加载动态库
加载动态库,解决cannot open shared object file: No such file or directory原创 2021-12-01 15:23:37 · 1802 阅读 · 0 评论 -
【golang基础】net包:ipv4、ipv6、域名
判断输入的字符串是否符合ip格式以下代码不仅可用于ipv6,也同样适用于ipv4。package mainimport ( "net" "fmt")func main() { //ipv4 := "12.56.30.88" ipv6 := "fe80::7526:a2ae:a0b8:946d" var p_ipv6 *string = &ipv6 //使用指针 // ParseIP 这个方法 可以用来检查 ipv4/ipv6 地址是原创 2021-10-29 15:59:31 · 2783 阅读 · 0 评论 -
【golang基础】判定字符串为空、判断结构体是否已经初始化、两个结构体是否相等
判定字符串为空、判断结构体是否已经初始化、两个结构体是否相等原创 2021-10-28 18:49:58 · 2178 阅读 · 0 评论 -
【golang基础】数组的使用
数组的定义type NumStruct struct { min int value int max int}var Number = [2]NumStruct{ NumStruct{ 1, 2, 3, }, NumStruct{ 4, 5, 6, },}千万注意逗号的问题,不然编译不通过。数据的使用pack原创 2021-10-28 18:11:45 · 235 阅读 · 0 评论 -
【golang基础】time包时间戳的使用
package main import ( "fmt" "time")func main() { //当前时区时间-时间戳 fmt.Println("时间戳:", time.Now()) fmt.Println("时间戳(秒):", time.Now().Unix()) //获取秒的时间戳 fmt.Println("时间戳(毫秒):", time.Now().UnixNano() / 1e6) //获取秒的时间戳 fmt.Println("时原创 2021-10-28 15:16:24 · 924 阅读 · 0 评论 -
2020-10-15 linux下ftp命令行的使用
[love@localhost x86_64-linux]$ ftp 192.168.1.1Connected to 192.168.1.1 (192.168.1.1).220 (vsFTPd 3.0.2)Name (192.168.1.1:love): love331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary ..原创 2021-02-03 17:31:33 · 530 阅读 · 2 评论 -
2020-12-25 C语言sscanf的用法
#include<stdio.h>#include<stdlib.h>#include<string.h>int main(){ char str[100] = "adc"; //用法一:取指定长度的字符串 sscanf("12345","%4s",str); printf("用法一\nstr = %s\n",str); //用法二:格式化时间 int year,month,day,hour,minute,sec.原创 2020-12-25 15:55:32 · 213 阅读 · 0 评论 -
2020-12-25 C语言打印时间
#include<sys/time.h>#include<stdio.h>#include<time.h>#include<stdint.h> int main(){ struct timeval tv; gettimeofday(&tv,NULL);//获取1970-1-1到现在的时间结果保存到tv中 uint64_t sec=tv.tv_sec; uint64_t min.原创 2020-12-25 15:37:43 · 1411 阅读 · 0 评论 -
2020-12-23 C语言动态打开so库
#include <stdio.h>#include <dlfcn.h>int load_so(char* path, char* so){ //加载指定位置的so动态库 int ret = 100; int rate = 0; char so_path[128] = {'\0'}; snprintf(so_path, sizeof(so_path), "%s%s", path, so); printf("open so(%s) is .原创 2020-12-23 17:44:26 · 473 阅读 · 0 评论 -
2020-10-15 C语言字符串处理常见函数和处理逻辑
//字符串处理常见函数//内存清空void *memset(void *s, int ch, size_t n);//内存拷贝void *memcpy(void *destin, void *source, unsigned n);//读取文件中的一行char *fgets(char *str, int n, FILE *stream);//字符串写入文件中,如果是写入一行,需要在str后面加上换行符int fputs(const char *str, FILE *stream);.原创 2020-10-15 13:31:25 · 170 阅读 · 0 评论 -
ssl证书的使用说明
使用openssl命令导出.crtopenssl pkcs12 -in keystore.p12 -nokeys -out my_key_store.crt使用openssl命令导出.keyopenssl pkcs12 -in keystore.p12 -nocerts -nodes -out my_store.key使用openssl命令导出.csropenssl pkcs12 -in keystore.p12 -nokeys -out my_key_store.csr...原创 2020-09-23 20:53:37 · 341 阅读 · 0 评论 -
【参考示例】python识别文件编码格式
#!/usr/bin/python# -*- coding: UTF-8 -*-import sys, getopt, chardetdef main(argv): inputfile = '' try: opts, args = getopt.getopt(argv,"hf:",["file="]) #print 'error' except getopt.GetoptError: print 'file_check.py.原创 2020-09-22 18:03:31 · 312 阅读 · 0 评论 -
C语言时间转换的参考示例
#include <sys/time.h>1、int gettimeofday(struct timeval*tv, struct timezone *tz);其参数tv是保存获取时间结果的结构体,参数tz用于保存时区结果:struct timezone{int tz_minuteswest;/*格林威治时间往西方的时差*/int tz_dsttime;/*DST 时间的修正方式*/}timezone 参数若不使用则传入NULL即可。而结构体timeval的定义为:s...原创 2020-09-22 17:31:48 · 630 阅读 · 0 评论 -
C语言文件操作的参考示例
FILE *fp = NULL; char line[1024] = {0}; fp = fopen("20200922_1622.csv", "r+"); if( NULL == fp ) { printf("Fail to open file!\n"); return 0; } do { memset(line, 0, sizeof(line)); line = ...原创 2020-09-22 16:25:40 · 254 阅读 · 0 评论 -
nginx或openresty如何隐藏版本号或者修改版本信息
1、在配置文件中配置server_tokens off;即可隐藏版本信息2、修改或者混淆版本信息例如:openresty就修改bundle/nginx-1.15.8/src/core/nginx.h原创 2020-05-09 17:53:04 · 4518 阅读 · 0 评论 -
linux使用命令查看MAC地址
MAC地址用于在网络中唯一标示一个网卡,一台设备若有一或多个网卡,则每个网卡都需要并会有一个唯一的MAC地址。MAC地址则是48位的(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如08:00:20:0A:8C:6D就是一个MAC地址。具体如下图所示,其前3字节表示OUI(Organizationally Unique Identifier),是IEEE的注册管理机构给不同厂家分配的代码,区分不同的厂家。后3字节由厂家自行分配。在OSI模型中,第三层网络层负责IP地址,第二原创 2020-05-09 17:39:01 · 45186 阅读 · 0 评论 -
退出码(exit status,或exit code)的约定
退出码(exit status,或exit code)的约定:0表示成功(Zero - Success)非0表示失败(Non-Zero - Failure)2表示用法不当(Incorrect Usage)127表示命令没有找到(Command Not Found)126表示不是可执行的(Not an executable)>=128 信号产生...原创 2019-11-27 22:27:35 · 3305 阅读 · 0 评论 -
linux下g++/gcc编译器
1、编译器(编译器具体的原理建议学习《编译原理》)编译器就是将"一种语言(通常为高级语言)"翻译为"另一种语言(通常为低级语言)"的程序。一个现代编译器的主要工作流程:源代码(source code) → 预处理器 (preprocessor)→ 编译器 (compiler)→ 目标代码(object code) → 链接器 (Linker)→ 可执行程序 (executables)。编译器可以生...原创 2018-05-04 00:15:40 · 788 阅读 · 0 评论 -
linux系统的启动执行顺序
1、系统启动文件执行顺序(1)/etc/environment 系统登录时读取的第一个文件(2)/etc/profile 系统登录时执行的第二个文件(3)~/.profile 对应当前登录用户的profile文件,定制当前用户的个人工作环境(4)./etc/bash.bashrc 是针对所有用户的bas...原创 2018-05-04 00:17:17 · 804 阅读 · 0 评论 -
文本编辑器vim的使用总结
vim是大多数linux系统默认的文本编辑器。vim编辑器三种状态命令模式(输入vi)输入模式(i、a、o末行有插入字样,ESC返回命令模式)末行模式(输入:进入末行模式,在末行输入指令,ESC返回命令模式) 在用户目录下建立.vimrc的配置文件(编辑自己代码编写风格和设置):e file_name 打开文件file_name到vim编辑器:e!file_name 打...原创 2018-05-04 00:16:29 · 264 阅读 · 0 评论 -
GNU工具生成Makefile以及符合GNU的源码的目录架构
GNU工具生成MakefileLinux下,大型工程一般情况下不可能手动书写makefile而是采用make menuconfig或者make xconfig来配置不同的执行脚本文件,如make menuconfig对应着是kconfig,最后会被选择进入到.configure,然后配合顶层makefile使用。 自动生成makefile的过程为:1、 执行autoscane,生成configu...原创 2018-05-03 16:32:01 · 428 阅读 · 0 评论 -
makefile简说、编写makefile
LINUX下源码编译LINUX下源码编译C/C++,通常使用GNU工具链。C/C++的编译过程,通常为源文件(.c、.cc、.cpp后缀文件),编译为中间目标文件(即生成为.S、.o等后缀的中间文件),再通过链接生成可执行文件(编译器的编译过程大致分为四个步骤:预处理、编译、汇编和链接)。建立一个项目文件project目录结构注释:以上的结构是最简单的项目目录结构,在大型项目中,project有更...原创 2018-05-03 16:29:23 · 252 阅读 · 0 评论 -
用gdb来调试C/C++程序以及用Valgrind寻找程序漏洞和改进程序
Gcc编译程序Gdb--程序调试工具,调试有问题的程序开源哲学之一:只要眼球足够多,所有的BUG都好捕捉。 1、Gcc编译流程预处理 //展开预编译的宏->编译 //高级语言->汇编语言->汇编 //汇编语言->机器语言->链接 //把.o文件连接起来2、Gcc编译器常用选项1、总体选项-o ...原创 2018-05-03 16:17:12 · 289 阅读 · 0 评论 -
linux动静态链接库问题
1 linux动静态库是什么?把一些代码生成为代码包,供其它程序调用,即是动静态库。动静态库都不是可执行文件,而是由源文件编译而成。linux下,静态函数库(对应为.a文件)、共享函数库(动态库,对应为.so文件)。.a文件类似于windows的.lib文件、.so文件类似于windows的.dll文件(Dynamic Link Library),中间编译文件.o文件相当于windows里的.ob...原创 2018-05-04 00:13:16 · 255 阅读 · 0 评论 -
linux服务器配置——总述(后续继续补充,再单独写文章说明每个服务器)
1、文件传输服务NFS(Network File System) Unix(Lniux)和Linux(Unix)之间的文件传输Samba Windows和Linux之间的文件传输TFTP(Trivial FileTransfer Protocol) 常用于Lniux和开发板之间的文件传输 2、NFS服务器架设设置的一般步骤:(1)在NFS服务器主机中...原创 2018-05-04 00:27:41 · 211 阅读 · 0 评论 -
linux网络编程之select poll epoll对比整理
IO复用:因为在linux中,一切皆文件,而文件就是一串二进制流。IO操作即是对文件进行读写(系统调用read/write)。同步和异步针对应用程序来说,关注的是程序中间的协作关系;阻塞与非阻塞更关注的是单个进程的执行状态。同步有阻塞和非阻塞之分,阻塞、非阻塞、多路IO复用,都是同步IO;异步必定是非阻塞的。同步:执行一个操作之后,进程触发IO操作并等待(也就是我们说的阻塞)或者轮询的去查看IO操...原创 2018-05-07 00:59:46 · 916 阅读 · 0 评论 -
git命令使用
1、Git图形界面Windows:Tortoise GitMac OS X下开源的Git客户端:GitX(L)Source tree是windows和mac os下免费的Git和Hg客户端管理工具,同时也是mercuria和subversion版本控制系统工具。支持创建、克隆、提交、push、pull和合并等操作。MAC:Tower2、Git优秀高效的重要原因是:git跟踪并管理的是文...原创 2018-05-03 15:36:03 · 167 阅读 · 0 评论 -
OpenSSL的使用简要说明(未完)
OpenSSL是一个开源项目,包括了OpenSSL+libcrypto+libssl。1、对称加密——openssl encopenssl enc -e -a -aes-192-ctr -in ./password.txt -out ./secret_key.txt -pass -pass:asdf123openssl enc -d -a -aes-192-ctr -in ./secr...原创 2019-01-09 23:35:22 · 793 阅读 · 0 评论 -
docker
#systemctl start/status/restart docker.service导入镜像#docker import xxx centos:7创建容器#docker run --resatrt=always --device /dev/uio0 -it --privileged --name=test --network=host centos:7 /usr/sbin/...原创 2019-01-27 20:45:37 · 146 阅读 · 0 评论 -
snmp
简单网络管理协议(SNMP),由一组网络管理的标准组成,包含一个应用层协议(application layer protocol)、数据库模型(database schema)和一组资料物件。1、snmp进程:#/bin/systemctl daemon-reload#/etc/rc.d/init.d/snmpd#pid=`pidof snmpd`#kill $pid2、s...原创 2019-01-27 20:52:46 · 1199 阅读 · 0 评论 -
NTP
——NTP协议NTPv3:RFC1305NTPv4:RFC5905——时区(1)timedatectl set-timezoneChina Standard Time (CST), UTC +8timedatectl set-timezone 'Asia/Shanghai'timedatectl set-timezone CSTCoordinated Universa...原创 2019-08-13 00:09:39 · 776 阅读 · 0 评论 -
linux命令整理集合
linux命令组成 命令字 命令选项 命令参数ls -l ./ 显示当前路径所有文件#tab键 自动补全帮助:#Help 命令字命令字 --help#Man 命令字/函数 //可查看命令和函数 manual#Info 命令字1.文件linux下以点 . 开头的文件是隐藏文件#cp 复制文...原创 2018-05-03 15:27:46 · 164 阅读 · 0 评论