05 2020 档案
摘要:awk 工作过程:先执行BEGIN模块,再跟文本交互,最后执行END模块.也就是说BEGIN/END模块,这俩是单独操作跟文本是同一级,但执行有优先级,BEGIN模块>文本>END模块 行级处理器:跟文本交互是按行来的,读取一行内容,处理一行,然后重复这一流程,直到处理完. 程序结构: 开始块(BE
阅读全文
摘要:ARGC: number (2) 在命令行提供的参数的个数,不包括命令awkARGIND: number (0) 当前文件中正在处理的 ARGV 数组的索引值。 文件的位置,从1开始计数.一个文件处在1号位.第2个文件处在2号位.ARGV: array, 2 elements 存储命令行输入参数的数
阅读全文
摘要:类型定义是在当前包中的一直存在的.输出%T,发现类型前面都有main.前缀 类型别名,其实还是它的根本类型,别名只存在在代码中.编译后就不存在了,还是根本类型.
阅读全文
摘要:所以定义其他包的别名类型,通常会导致报错: type Talias = 其他包.T cannot define new methods on non-local type time.Duration 对于其他包中的类型,本地若想使用 可以在本地重新定义个自定义类型 type myT 其他包.T
阅读全文
摘要:命名类型:一个命名类型一定跟其他类型不同. 哪些是命名类型 1. 预先声明的类型,如int/int8/boo/float32... 2.使用type声明的类型,类似起别名,如type aInt int var i int // named type type myInt int // named t
阅读全文
摘要:预先类型: int/int8/bool/string ... 未命名类型:map[string]string []int [][]string
阅读全文
摘要:type switchs用法 这里存在一个未知类型变量的内省操作(introspection operation),就是x.(type),其中x是interface{}类型
阅读全文
摘要:相同点: 都能够直接引用对象,并对对象进行操作. 不同点: 指针 引用 指针类型的变量能够保存一个对象的地址 引用是一个对象的别名 可以为空nil,可以不初始化 不可以为空nil,必须初始化 当设计一个变量用于指向另一个对象,但是变量有可能为空,这时应该使用指针. 当设计一个变量总是指向一个对象,不
阅读全文
摘要:一个带换行的字符串写法: 如果想在一行输出一个很长的字符串. 方法一:把字符串拆分,成多个字符串,每个字符串作为Println的参数传进入,各个参数之间用逗号分隔, fmt.Println("aaa","bbb", //实参列表可以换行写,但是不要光秃秃的传入一个数据,来结尾,要以一个逗号来结尾.
阅读全文
摘要:不用人加 编译的时候自动加了分号; 编译器工作原理 首先,在一行中,寻找成对的符号,比如一对字符串的引号.一对圆括号,一对大括号 上述任务完成后,在一行中没有其他成对的标示,然后就在行尾追加分号; 所以一行一个语句,结尾不用加分号. 举例: import 后面,每个包写一行,后面自动追加分号; im
阅读全文
摘要:不同的类型,他们的默认的%v 一个变动的格式化字符串,相当于一个变量,遇到不同类型,就变形成不同的格式. 类型 %v bool %t int/int8/... %d uint/uint8/... %d float32/64/complex64 %g string %s chan %p pointer
阅读全文
摘要:decorator pattern 定义:允许向现有的对象(一个函数也认为是一个对象)添加新功能,而不改变其结构. 多功能螺丝刀的原理 func functionValue(a,b int,do func(int,int)int){ do(a,b) } 像这样,functionValue函数形参里面
阅读全文
摘要:数据类型的分类:第一类值VS第二类值 第一类值:变量中可以存储函数,也就是说func类似int/double. 第二类值: 1.不能存储函数,不能动态创建函数,不能动态销毁函数; 2.只能存储一个指向函数的指针;
阅读全文
摘要:函数执行时,除了运行函数体内的代码,还要使用函数外的代码. 也就是说,这个函数跟函数所使用的到外部信息是一个整体存储的. 这种将函数和它所用的信息作为一个整体,就是闭包. 比如排序,A让B排序,B会做排序,但排序需要知道哪个比哪个大,这点B自己不知道,就需要A告诉它。而这种判断那个大,本身是一种动作
阅读全文
摘要:函数也是一种语法糖. 函数是第一类值,函数也是值,函数也有创建函数的表达式. 函数的定义本质:创建类型为func([形参])[(实参)]的值并将它赋值给一个变量的语句. func foo([形参])[(实参)]{ 函数体 } 它其实是一种语法糖,他是下面写法的美化形式. foo = func([形参
阅读全文
摘要:语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。 从
阅读全文
摘要:匿名返回值:只有数据类型如int,(int,int) 此时,函数体中要显示返回return 1,1 或return a,b 命名返回值:既有返回值类型,又有返回值变量的名称.如:(res int) 此时,函数体中不用显示返回,如return就可以.
阅读全文
摘要:函数是对代码的汇总,可以在别处任意调用. 通常有返回值; 无返回值的函数作用: 1.这个无返回值的函数的参数为引用传递,目的修改参数内容. 2.单元测试:指对软件中的最小可测试单元进行检查和验证.通常是一个人为规定的最小的被测功能模块 3.打印输出
阅读全文
摘要:ZK的节点有5种操作权限:CREATE、READ、WRITE、DELETE、ADMIN 也就是 增、删、改、查、管理权限,这5种权限简写为crwda(即:每个单词的首字符缩写)注:这5种权限中,delete是指对子节点的删除权限,其它4种权限指对自身节点的操作权限 身份的认证有4种方式:world:
阅读全文
摘要:内置函数len(),可以返回字符串/数组/切片/map/channel的长度. unicode/utf8包 函数:RuneCountInString(输入一个字符串),返回int类型的字符串长度.由于rune=int32,所以完全可以表示utf8中的所有字符,因此,这个计算字符串长度的函数认为汉字计
阅读全文
摘要:rune和byte在处理字符/字符串中的应用. 定义: rune是int32的别名,-2147483648->2147483647,常用来表示UNICODE字符集,可以用来处理包含中文/非中文的字符集. type rune = int32 byte是uint8的别名,0->255,常用来表示ASCI
阅读全文
摘要:golang规定了左大括号必须紧跟在语句后面,这样一下子就结束了各种代码风格之争. 其实golang是继承了早期的C语言,为了节省空间,才将左括号放到代码后面. 哪种编码风格是你的“菜” 每个程序员都有自己的编码风格,这基本上都是由他们的喜好决定的,此外,程序员还乐于争论各种编码风格的优劣,比如关于
阅读全文
摘要:Zookeeper的一个节点不知道什么原因无法删除了,查看日志发现是没有权限, 我们之前使用ACL进行Zookeeper节点的权限管理。 可以解决以下三种但不限于以下三种问题: 1.在设置Acl权限时遇到了坑人(明文,密文)的问题,无法找回该路径权限 2.忘记路径对应的用户名以及密码 3.没有权限
阅读全文
摘要:相同: 限制和允许操作 操作对象:少数人,多数人 不同: 白名单是允许少数人能通过,黑名单是限制少数人不能通过; 白名单是限制多数人不能通过,黑名单是允许多数人能通过. 白名单 黑名单 少数人 允许 限制 多数人 限制 允许
阅读全文
摘要:先结束程序 再重新启动程序
阅读全文
摘要:Go is a tool for managing Go source code. go-->管理go源码的工具-->管理工具,包含很多功能命令 Usage: go <command> [arguments] go 功能命令 参数 The commands are: bug start a bug
阅读全文
摘要:相同点都能生成可执行文件 不同点go build 不能生成包文件, go install 可以生成包文件go build 生成可执行文件在当前目录下, go install 生成可执行文件在bin目录下($GOPATH/bin) go build 经常用于编译测试.go install主要用于生产库
阅读全文
摘要:设置GOROOT的原因 编译器的位置指定的时候,需要指定GO开发包的安装位置,然后设置环境变量PATH的时候,需要指定到安装包下的bin目录,其中就有以下的编译/执行器.所以GOROOT指定了前面的路径. 当使用go run 源码,自动化的完成编译和执行二进制文件的时候.源码必须放在当前运行go解释
阅读全文
摘要:mysql版本5.7.29升级到5.7.30 由于我们安装mysql的方式是通过mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar中的rpm包安装:rpm -Uvh mysql-community-*.rpm 所以升级的方式是专门针对这种方式的. 其实升级的过程跟从0开
阅读全文
摘要:1. 对已压缩的zip文件进行转换,转换为分卷压缩. >不推荐,对已压缩的zip文件,为了保持md5传输前后一致,要将此压缩文件放入一个新的目录中,然后就像下面的2中那样,对目录进行初次分卷压缩,直接对压缩文件不能压缩. 右键单击要压缩的zip文件->其他压缩命令->转换压缩文件 再单击压缩选项 设
阅读全文
摘要:用远程桌面连接登陆服务器的时候跳出来一个对话框,提示“发生身份验证错误,要求的函数不受支持。”的现象的解决方案如下所示。 解决方案1 策略路径:“计算机配置”->“管理模板”->“系统”->“凭据分配” 设置名称"加密 Oracle 修正"为已启用和易受攻击,并确定就可以了。 解决方案2 (亲测可用
阅读全文
摘要:1.freeswitch xml配置文件新增网关后,使其生效,可以重启freeswitch或者使用命令方式 fs_cli -H 127.0.0.1 -P 8021 -p hmzj -x sofia profile external rescan 2.查询网关注册状态: sofia status 3.
阅读全文
摘要:这篇文章主要介绍了Lua中实现sleep函数功能的4种方法,本文讲解了在一个死循环中设置一个跳出条件方法、调用系统的sleep函数法、Windows下ping命令法、socket库中select函数法4种方法,需要的朋友可以参考下 一个不幸的消息是Lua中没有内置sleep函数,我们需要DIY。有4
阅读全文