常用linux 命令

 

杂项

lsof -t -i:8888   # 查看端口8888的占用进程id
kill -9 {进程id}   # 结束进程
sudo chmod -R 777 # 修改文件权限
sudo dpkg -i {软件包名.deb}    #按照deb包软件
sudo apt-get update          #更新本地软件版本

git

#查看git日志
git log

#可视化,查看git日志
gitk

#查看当前改动
git diff

#添加新的文件修改到暂存区
git add .

#提交当前修改
git commit -a

#提交当前修改,并与目前所在commit合并
git commit -a --amend

#退回先前的版本 一个【^】一个回跳
git reset --hard HEAD^

#在当前commit上抓取指定commit的修改
git cherry-pick 
#出现修改冲突时,需要手动解决,解决完成之后输入
git cherry-pick --continue

#将远程主机的最新内容拉到本地
git fetch

#将远程主机的最新内容拉下来后直接合并git pull = git fetch + git merge
git pull

#生成一个跟某个commit完全相反的修改,即撤销修改的diff
git revert 

#排列、修改前5个commit的顺序
git rebase -i HEAD~5

#把当前的未提交修改放入stash中并删除
git stash
#取回上一次stash的修改
git stash pop

#把当前所在commit提交为一个diff
#在本地修改commit的标题等,在代码库的diff中不会生效
#需要进phabricator网站右边的"Edit Eevision"修改标题和描述
arc diff HEAD^ [--create|--update {diff id}]

#将代码库中的diff拉取到本地,并切换过去,--nobranch表示附加到当前commit后
arc patch {diff id} [--nobranch]

#如果diff被通过,且通过编译测试,就可以land进代码库了:
arc land --onto {origin branch name}

docker

#查看本地镜像
docker image ls

#删除本地镜像
docker image rm {image_id}

#从本地镜像启动一个docker容器
docker run -it {image_id} /bin/bash

#查看本地正在运行的docker容器, -a查看包含stop的容器
docker ps [-a]

#进入一个正在运行的docker容器
docker attach  {contain_id}

#停止运行容器
docker stop {contain_id}

#移除容器
docker rm {contain_id}

#启动一个停止的容器
docker start {contain_id}

#进入一个正在运行的容器
docker exec -it {contain_id} /bin/bash

exit  #从容器中退出

#复制docker中的文件到本地目录
docker cp {contain_id}:{contain_path} {local_path}

k8s

#查看k8s workflow列表
argo -n cep2-dev list

#查看指定workflow运行状态(每个pod的运行状态)
argo -n cep2-dev (get/watch) {workflow id}

#查看指定pod输出log
kubectl -n cep2-dev logs {pod id} main -f

#上传一个secret到k8s服务器
kubectl create secret generic {{secret-name}} --from-literal={{secret-key}}={{secret-value}} -n {{namespace}}

tmux

#安装
apt-get install tmux

#创建session 指定名称
tmux [new -s {session_name}]

#列出session
tmux ls

#暂时退出session
Ctrl+b、d

#进入已存在的session
tmux attach -t {session_name}

#删除指定session
tmux kill-session -t {session_name}

tmux-windows

#一个session里,可以有多个window
#创建window
Ctrl+b +c

#删除window
Ctrl+b &

#下一个window
Ctrl+b n

#上一个window
Ctrl+b p

#重命名window
Ctrl+b ,

#在多个window里搜索关键字
Ctrl+b f

#在相邻的两个window里切换
Ctrl+b l

tmux-pane

#一个window,可以有多个pane

#启用鼠标选中panal
#或者直接将这个语句写入到 ~/.tmux.conf中,如果在session外设置,需要加上tmux前缀
#启动鼠标模式后可以使用滚轮,赋值
set -g mouse on

#分成上下两半,下边是新pane
Ctrl+b ”

#分成左右两半,右边是新pane
Ctrl+b %

#方向键选中焦点pane
Ctrl+b 方向键上下左右

#移动当前焦点pane的上、右边界
Ctrl+b Ctrl+方向键上下左右

#pane全屏、取消全屏(全屏的pane名称后面会跟着一个*Z)
Ctrl+b z

#移动pane(与其他pane互换位置)
Ctrl+b { (往左边,往上面)
Ctrl+b } (往右边,往下面)

#删除pane
Ctrl+b x | Ctrl+d

#pane便捷自动排版
Ctrl+b 空格键

#移动pane至创建一个新的window
Ctrl+b !

#移动pane合并至某个window
Ctrl+b :join-pane -t $window_name

#显示pane编号
Ctrl+b q

#显示时间
Ctrl+b t

#按编号顺序移动pane位置
Ctrl+b Ctrl+o

 

你可能感兴趣的:(linux)