vim

vim快捷键列表及一些基本操作。 快捷键 功能 移动 h,j,k,l 左,下,右,上 w 向右移动一个单词(5w,移动5个) b 向左移动一个单词(同上) ^ 移动到本行第一个非空字符 $ 移动到本行末尾 gg 移到文本开头 G 文本末尾 插入 i 光标前插入 a 光标后插入 A 本行末尾插入 o 光标下方新起一行插入 O 光标上方新起一行插入 删除 dd 删除该行(3dd,删除3行) D 删除光标至行尾 dw 删除一个单词 d0 删除至行首 dgg 删除至文件开头 dG 删除至文本末尾 x 删除光标处字符 X 删除光标左边单个字符 修改 r 替换字符(单个) R 替换字符(进入替换模式) s 修改一个字符(直接进入insert模式) C 从光标处删除到行尾,并进入插入模式 c 用法同d命令,但是会直接转换为插入模式 c$ 替换文本到行尾(直接进入insert模式,功能和“D+i”一样,但是快) ....

June 30, 2019 · 2 min · Joe

ss 命令

听说ss比netstat快,总结一下基本的用法。 显示所有tcp socket: $ ss -t -a State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:ddi-tcp-1 *:* LISTEN 0 100 127.0.0.1:smtp *:* LISTEN 0 128 *:28369 *:* 显示所有udp socket: $ ss -u -a State Recv-Q Send-Q Local Address:Port Peer Address:Port UNCONN 0 0 *:ddi-udp-1 *:* UNCONN 0 0 127.0.0.1:323 *:* UNCONN 0 0 *:bootpc *:* UNCONN 0 0 :::19562 :::* UNCONN 0 0 :::14966 :::* 显示socket简要信息: $ ss -s Total: 201 (kernel 840) TCP: 7 (estab 1, closed 1, orphaned 0, synrecv 0, timewait 0/0), ports 0 Transport Total IP IPv6 * 840 - - RAW 0 0 0 UDP 12 3 9 TCP 6 4 2 INET 18 7 11 FRAG 0 0 0 列出每个进程及其监听的端口:...

June 30, 2019 · 2 min · Joe

yum包管理器

yum和rpm 维基百科 最常用的几个命令: install:安装 update:更新 remove:删除 search:搜索 localinstall:安装本地rpm包 下面演示一下安装nginx: 搜索 # yum search nginx collectd-nginx.x86_64 : Nginx plugin for collectd munin-nginx.noarch : NGINX support for Munin resource monitoring nextcloud-nginx.noarch : Nginx integration for NextCloud nginx-all-modules.noarch : A meta package that installs all available Nginx modules nginx-filesystem.noarch : The basic directory layout for the Nginx server nginx-mod-http-geoip.x86_64 : Nginx HTTP geoip module nginx-mod-http-image-filter.x86_64 : Nginx HTTP image filter module nginx-mod-http-perl....

June 29, 2019 · 2 min · Joe

docker swarm集群部署traefik及tls证书

需要一个swarm集群= = ,我们用traefik的动态配置,所谓的动态配置就是你修改配置文件以后,不用手动重启traefik,只要重启微服务,它会自动发现你的修改并且应用。 traefik的那些概念我不讲了,官方文档说得很清楚,我们直接在swarm集群里面起一个traefik: version: "3.7" services: traefik: image: traefik:v1.7-alpine ports: - 80:80 - 443:443 deploy: labels: - traefik.frontend.rule=Host:traefik.com - traefik.enable=true - traefik.port=8080 - traefik.tags=traefik-public - traefik.docker.network=multihost - traefik.webservice.frontend.entryPoints=https replicas: 1 placement: constraints: - node.labels.traefik-public.traefik-public-certificates == true configs: - source: traefik.toml target: /etc/traefik/traefik.toml volumes: - "/var/run/docker.sock:/var/run/docker.sock" secrets: - source: traefik.com.crt target: /ssl/traefik.com.crt - source: traefik.com.key target: /ssl/traefik.com.key networks: - multihost command: >--docker --docker.swarmMode --docker.watch --docker.exposedbydefault=false --constraints=tag==traefik-public --accessLog --api networks: multihost: external: true configs: traefik....

June 28, 2019 · 1 min · Joe