运维工具

shell 条件测试

# 条件测试 # test <测试表达式> # [ <测试表达式> ] 一般使用 -a 且 -o 或 -gt 大于 -lt 小于 整数 # [[ <测试表达式> ]] 可以使用通配符进行模式匹配 && || > < # (( <测...

shell 运算符

# 算术运算符 # + - * / % 加 减 乘 除 取余 # ** 幂运算 # ++ -- 自增或自减 可放到变量前或后,放在变量前,先自加或自减再取值 # ! && || 逻辑非 逻辑与 逻辑或 # < <= > >= 比较运算符 小...

Python3操作excel

#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2020/1/17 19:55 # @Author : Ropon # @File : excel_test.py # 读excel # pip3 install xlrd # import xlrd # excelName = r"./excel/1-12...

Go请求库requests

#requests #下载 go get -v github.com/Ropon/requests #初始化请求 request = requests.Requests() #构建header request.Headers = map[string]string{"key":val} #构建cookie request.Cookies = map&#...

Go中解析配置文件demo

package main import ( "fmt" "io/ioutil" "reflect" "strconv" "strings" ) // Config 日志文件结构体 type Config struct { Level string `conf:"level"` Filepath string `conf:"filepath"` Fil...

Go语言中反射(reflect)

package main import ( "fmt" "reflect" ) //go语言中变量分为两部分 // 类型信息:预先定义好元信息 // 值信息:程序运行过程中可动态变化 //reflect包 //reflect.TypeOf 获取任意值的类型对象(reflect.T...

Go语言中Channel

package main //通道 //通过通道共享内存(先入先出) //channel 是一种类型 是引用类型 空值nil //语法 //var 变量 chan 元素类型 //var ch1 chan int //var ch2 chan bool //需要通过make初始化 //make(cha...

Go语言中并发

package main import ( "fmt" "runtime" "sync" ) //goroutine 类似于线程 属于用户态的线程 //goroutine 由go语言运行时(runtime)调度完成 而线程由操作系统调度完成 //需要并发执行任务时 只需将这个...

Go语言中日志库demo

// logger.go package logger import "strings" //日志库 //Loglevelmap 定义日志级别map var Loglevelmap = map[string]int{ "debug": 0, "info": 1, "warn": 2, "error": 3, "fatal": 4, } //Logge...

Go语言中指针

package main import "fmt" // 指针 // 区别于c/c++ Go语言指针不能进行偏移和运算 是安全指针 // 指针地址 // 指针类似 // 指针取值 // & 取地址 * 根据地址取值 // 指针传值例子 func mod1(x int) { ...