菜单
本页目录

gitcurlmvndfzcatgrepscpjrek8sdockertelnetnpmnrmpostmanhistory正则cygwinpgsql


curl

curl + 接口地址 + -X POST + -d 参数
列:
$ curl 'http://localhost:8080/xxx' -X POST -d '{"k":1,"t":"v"}' --header 'Content-Type: application/json'

curl -X POST http://localhost:8080/v1/api/xxx?service=x&roleCode=x&companyId=x
curl http://localhost:8080/v1/api/xxx-X GET -d 'service=x&roleCode=x&companyId=x'  

带header[-H ''],多个再加 -H ''
curl -X POST 'http://127.0.0.1:30501/v2/ap/xxx' -H 'token:xxx' -H 'app:uas_info'


注:
linux系统&带参数需要进行转义 => \&

docker

查看容器
docker ps -a
    -a :显示所有的容器,包括未运行的。
    -f :根据条件过滤显示的内容。
    --format :指定返回值的模板文件。
    -l :显示最近创建的容器。
    -n :列出最近创建的n个容器。
    --no-trunc :不截断输出。
    -q :静默模式,只显示容器编号。
    -s :显示总的文件大小。
 
停止容器
docker stop 容器id
删除创建的容器(未运行的容器)
docker rm 容器id
启动容器,并进入容器
docker run -it [mysql(容器名)] /bin/bash
启动容器,不进入容器
docker run -d mysql:latest 


-- 下载安装wordpress
docker pull wordpress:latest

-- 绑定目录合数据源
docker run --name app -v /home/app/wordpress:/var/www/html  -e WORDPRESS_DB_HOST=0.0.0.0:3306 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD='xxxx' -e WORDPRESS_DB_NAME=app  -p 80:80 -d wordpress:latest

	–name 给运行的容器起一个名字,虽然启动之后,docker会返回一个很长的唯一标识字符串,但名字更利于管理和记忆。
	–privileged=true 给容器开启特权,使容器可以看到外部设备。此命令执行必要性存疑。
	-p 80:80 将容器的80端口映射到主机的80端口,使其他设备能够通过此端口访问到容器。
	-v /home/app/wordpress:/var/www/html 给容器添加卷,冒号前为主机目录,冒号后为容器内目录。相当于容器和主机共享此目录,你在主机修改此目录的结果可以直接反应在容器中。
	-e WORDPRESS_DB_USER='xxxxxx' 给容器添加一个环境变量,我们通过WORDPRESS_DB_PASSWORD环境变量设置 mysql root用户的登录密码。
	-d 后台运行此容器。
-- 进入容器
docker run -it wordpress:latest /bin/bash

k8s

查看/修改应用的配置文件
kubectl get/edit cm -n lochness
查看/修改应用的配置文件内容
 kubectl edit cm xxx.nginx-app.conf -n lochness
进入容器
kubectl exec -it xxxxx-78d858b55-lgr8l -n lochness bash
查看容器日志
kubectl logs -f <Pod Name>
kubectl logs -f xxxxx-78d858b55-lgr8l -n lochness
查看容器实例 kubectl get pods -n lochness
配置方式运行 kubectl create -f <YAML>
删除容器和服务 kubectl delete -f <YAML>

正则

包含大写字母、小写字母、数字、特殊符号(不是字母,数字,下划线,汉字的字符)的8位以上组合
^(?![A-Za-z0-9]+$)(?![a-z0-9\\W]+$)(?![A-Za-z\\W]+$)(?![A-Z0-9\\W]+$)[a-zA-Z0-9\\W]{8,}$
匹配首尾空格的正则表达式:(^\s*)|(\s*$)
整数或者小数:[1]+.{0,1}[0-9]{0,2}$`
只能输入数字:^[0-9]*$
只能输入n位的数字:^\d{n}$
只能输入至少n位的数字:^\d{n,}$
只能输入m~n位的数字:。^\d{m,n}$
只能输入零和非零开头的数字:^(0|[1-9][0-9]*)$
只能输入有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
只能输入有1~3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
只能输入非零的正整数:^\+?[1-9][0-9]*$
只能输入非零的负整数:^\-[1-9][]0-9*$
只能输入长度为3的字符:^.{3}$
只能输入由26个英文字母组成的字符串:^[A-Za-z]+$
只能输入由26个大写英文字母组成的字符串:^[A-Z]+$
只能输入由26个小写英文字母组成的字符串:^[a-z]+$
只能输入由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
只能输入由数字、26个英文字母或者下划线组成的字符串:^\w+$
以字母开头,长度在6~18之间,只能包含字符、数字和下划线:^[a-zA-Z]\w{5,17}$。
验证是否含有^%&',;=?$"等字符:[^%&',;=?$\x22]+
只能输入汉字:^[\u4e00-\u9fa5]{0,}$
验证Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
验证InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$
验证电话号码:^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$正确格式为:"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX`
验证身份证号(15位或18位数字):^\d{15}|\d{18}$
验证一年的12个月:^(0?[1-9]|1[0-2])$ 正确格式为:"01"~"09"和"1"~"12
验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正确格式为;"01"~"09"和"1"~"31
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
String.prototype.len=function(){return this.replace(/[^\x00-\xff]/g,"aa").length;}
匹配空行的正则表达式:\n[\s| ]*\r
匹配html标签的正则表达式:<(.)>(.)</(.)>|<(.)/>

pgsql

json字段查询
   '->':对象取值,
   '->>':文本取值
查询文件  i.meta->>'testName' as "文本字段",
查询嵌套  i.meta->'object'->>'id' as "id",
查询字段中的数组是否包含字段值:
  示例:字段meta=》  {"service_list": ["oasis", "cmdb"]}
      需求,查询service_list中包含oasis的结果:  
         方案1: AND i.meta -> 'service_list'::text ? 'oasis'   
         方案2: AND i.meta @> '{"service_list": ["oasis"]}'
      

删除jsonb和hstore中的某个字段
      update <表> set  <jsonb字段> = <jsonb字段> -'<key>',<hstore字段>=<hstore字段> - '<key>'::text where  <条件1> and  <hstore字段> ? '<key>' ;

GIT

git merge origin master //将origin merge 到 master 上
git merge origin/master //将origin上的master分支 merge 到当前 branch 上 
# 查看所有分支
> git branch -a
# 查看当前使用分支(结果列表中前面标*号的表示当前使用分支)
> git branch
# 切换分支
> git checkout 分支名
# 删除 一些 没有 git add 的 文件
> git clean -d -fx
# 创建并切换分支
> git checkout -b 分支名 origin/远程分支名
# 本地分支修改关联远程已有分支
> git branch --set-upstream-to=origin/远程分支名 [本地分支名]
# 刷新分支
> git fetch
# 全局设置
> git config --global user.name "姓名"
> git config --global user.email "邮箱"
# 更新分支到master
> git rebase mybranch
# 查看各个分支最后一次提交
> git branch -v
# 查看哪些分支合并入当前分支
> git branch –merged
# 查看哪些分支未合并入当前分支
> git branch –no-merged
# 修改仓库地址
> git remote set-url origin git_url_new
# 丢弃本地所有修改,
> git checkout ./
> git clean -xdf ./
# 查看远程仓库地址
> git remote -v
git ls-files               # 查看暂存区的所有文件(这里是git跟踪的文件列表)
git rm -r --cached 指定文件 # 把暂存区的文件删除,使指定文件处于未跟踪状态,可以使用 . 来删除所有文件
git ls-files -o            # 查看没有被跟踪的文件,如果执行正确,被忽略的文件应该处于未跟踪状态
git status                 # 查看目前的状态,发现指定文件被删除

history

> history
#查看当前机器上所有历史命令
> history |grep mysql
#查看当前机器上所有包含"mysql"的历史命令

mvn

擦看依赖树
mvn dependency:tree  >d:/tree.txt

df

查看磁盘空间
    df -h /data/
查看目录每个文件占用情况
    du --max-depth=1 -h  /data/
查看文件大小
    du -sh /data/
查看磁盘 
    df -h
    cat /etc/fstab

zcat

tar.gz文件中查找
zcat /xxxx.tar.gz |grep -a "xxx" 

telnet

测试主机
$ telnet <ip> <port> 

grep

文件中查找内容
$grep -5 '0' xxx.log //打印匹配行的前后5行
$grep -C 5 'parttern' inputfile //打印匹配行的前后5行
$grep -A 5 'parttern' inputfile //打印匹配行的后5行
$grep -B 5 'parttern' inputfile //打印匹配行的前5行
$grep '申请' doc.log|grep 'hwa'

scp

远程拉取文件
scp -r core@10.139.100.194:/xxxx.tar.gz .

jre

java常用命令
jstack -l 28903 >> 20200206_jstack.txt
jmap -dump:format=b,file=20200206_jstack.out 28903

-Xdebug 远程调试命令
java -Xdebug -Xrunjdwp:transport=dt_socket,address=8788,server=y,suspend=n,onthrow=java.io.IOException,launch=/sbin/echo -Xms1024m -Xmx1024m -DAPP_DOMAIN=xxxx -jar xxxx.jar

-Xdebug:通知JVM工作在debug模式下;
-Xnoagent 禁用默认sun.tools.debug调试器。
-Xrunjdwp:通知JVM使用(java debug wire protocol)来运行调试环境;加载JDWP的JPDA参考执行实例
    transport:监听Socket端口连接方式(也可以dt_shmem共享内存方式,但限于windows机器,并且服务提供端和调试端只能位于同一台机);
    server:server=y表示当前是调试服务端,=n表示当前是调试客户端
    suspend:suspend=n表示启动时不中断,一般用于设置主动连接;suspend=y表示启动时就进入调试模式,一般用于被动连接
    address=prot 表示远程debug所开放的端口号
    onthrow指明,当产生该类型的Exception时,JVM就会中断下来,进行调式。该参数可选
    launch指明,当JVM被中断下来时,执行的可执行程序。该参数可选 
    onuncaught(=y或n)指明出现uncaught exception 后,是否中断JVM的执行。该参数可选
-Djava.compiler=NONE 禁止 JIT 编译器的加载。
-Dxxx=x 配置系统属性,用于将属性传递到应用中 System.getProperty("属性名")


启动调试 命令通过jdb
    jdb -connect com.sun.jdi.SocketAttach:port=5432,hostname={hostIp} 
工具通过idea/eclipse的remote插件

jvisualvm 打开文件
自带变量
guid

postman


npm

npm 安装项目
npm install
启动项目 (dev位package.json中的scritp中的key)
npm run dev
正确启动
npm run serve
编辑镜像配置文件
npm config edit
更改镜像地址
npm config set registry http://registry.npm.taobao.org
查看镜像列表(别名管理)
nrm ls
切换换镜像
nrm use taobao
删除node_modules => rd /s /q node_modules
rimraf node_modules  (需要安装 npm install rimraf -g)
安装
npm install rimraf -g

nrm

安装
npm install -g nrm
查看可选源
nrm ls
查看当前源
nrm current
切换源
nrm use <registry name>
添加源
nrm add <registry name> <url>
删除源
nrm del <registry name>
测试源速度
nrm test <registry name>

cygwin


mount

查看windows的盘符映射