Git简单命令说明
config
git config --local user.name "tongqijie"
git config --local user.email "tongqijie@hotmail.com"
git config credential.helper store
git config --local --unset user.password
git config --local advice.detachedHead false
git config --local http.sslVerify false
pull
git pull
push
git push
Elasticsearch API
创建索引
curl --request PUT 'http://localhost:9200/logging'
创建成功响应
{"acknowledged":true,"shards_acknowledged":true,"index":"logging"}
删除索引
curl --request DELETE 'http://localhost:9200/logging'
删除成功响应
{"acknowledged":true}
设置字段动态映射
curl --request PUT 'http://localhost:9200/logging/_
Linux - 一些命令
link
创建symlink
ln -s path-of-source-file path-of-destination-folder
process
显示所有进程信息
ps -ef
top
Shift+M: 内存占用从大到小排列
杀死进程(等同于Ctrl+C)
kill -s 2 process-id
根据进程名获取PID
ps -ef | grep name | grep -v grep | awk '{print $2}'
systemd
重新加载systemd配置
systemctl daemon-reload
查看systemctl日志
jo
RabbitMQ - Ubuntu安装、使用
安装RabbitMQ
echo 'deb http://www.rabbitmq.com/debian/ stable main' | sudo tee /etc/apt/sources.list.d/rabbitmq.list
wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get install rabbitmq-server
日志目录: /var/lo
Swift - 文件相关操作
系统目录
缓存目录、下载目录、文档目录
public static var cachesDirectory: URL? {
get {
return FileManager.default.urls(for: .cachesDirectory, in: .userDomainMask).first
}
}
public static var downloadsDirectory: URL? {
get {
return FileManager.default.urls(for: .downloadsDire
Swift - 类初始化指南
Designated Initializers和Convenience Initializers
Rule 1
A designated initializer must call a designated initializer from its immediate superclass.
Rule 2
A convenience initializer must call another initializer from the same class.
Rule 3
A convenience initializer must ultimately call
Swift - 字符串扩展
字符串查询
输出参数为Int类型,而非String.Index类型,更易理解
public extension String {
func indexOf(value: Character) -> Int? {
if let index = self.firstIndex(of: value) {
return self.distance(from: self.startIndex, to: index)
} else {
return nil
}
}
Nginx - Location语法
URI匹配方式
1.前缀匹配
无修饰符: 前缀匹配
=: 精确匹配
^~: 前缀匹配,与无修饰符的区别是不再匹配正则表达式
2.正则表达式匹配
~*: 大小写不敏感
~: 大小写敏感
匹配优先级(顺序)
1.首先按照最长匹配原则校验前缀匹配方式的location。
如果匹配到的location带有修饰符^~或=,则不再进行第二步匹配,直接应用该location。
如果匹配到location暂时先记下来,继续进行第二步。
2.然后按配置文件里的顺序依次校验正则表达式匹配方式的location。
如果匹配到location就停止继续
正则表达式
转义字符
. $ ^ { [ ( | ) * + ? \
字符匹配
[character_group] 匹配 character_group中的任何单个字符。
[^character_group] 匹配不在character_group中的任意单个字符匹配。
[first-last] 匹配从first到last的范围中的任意单个字符匹配。
. 匹配除\n之外的任意单个字符。
\w 匹配任何单词字符,等同于[A-Za-z0-9_]。
\W 匹配任何非单词字符。
\s 匹配任何空白字符。
\S 匹配任何非空白字符。
\d 匹配任何十进制数字。
\D 匹配不是十进制数的任意字符。
定位点
关键对话-听后感
对话,交谈后,产生了效果,对事情的发展有影响了,叫做关键对话
这是一本教人怎么沟通的书籍。
书中列举了不少有助于对话的方式方法。
1.极怒时勿与人书,极喜时勿予人物。
在很生气时,不要与人书信,交谈,自己先冷静。
在很开心时,不要随便答应赠与别人东西。
安全对话,气氛缓和的方法:
对自己强调对话目的,时刻保持尊重。
2.从心开始,把心管好。
回归事情本身,我们的痛苦,不是由他人引起。
A,事情发生了;B,你的看法;C,你的心情怎么样?
我们不应该总是执着的追求改变A,来达到C心情的改变,其实许多时候,应该改变的是B你的看法。
3.对话前,问自己几个问题
a.我希望对话达成目标