常用工具使用教程

常用工具conda/pip/vim/tmux使用教程

Posted by aptx1231 on December 7, 2020
字数统计:6233 | 阅读时长:18min

conda

查看版本号

1
conda --version

环境操作

创建环境

1
conda create -n your_env_name python=3.7

查看所有环境

1
2
conda info --envs
conda env list

进入环境

1
conda activate your_env_name

退出环境

1
deactivate

删除环境

1
conda remove -n your_env_name --all

复制环境

1
conda create -n new_env_name --clone old_env_name 

包操作

列出安装的包

1
2
conda list
conda list -n your_env_name

安装包

1
2
conda install package_name
conda install -n your_env_name package_name

删除包

1
2
3
conda remove -n your_env_name package_name
conda uninstall package_name
conda remove package_name

更新包

1
2
conda update python
conda update package_name

搜索包

1
conda search package_name

更新conda

1
2
conda update conda
conda update anaconda

添加国内源

1
2
3
4
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --set show_channel_urls yes

jupyer中加入conda环境

1
2
pip install ipykernel 
python -m ipykernel install --user --name your_env_name  --display-name "Python your_env_name"

pip

pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。

显示版本

1
pip --version

包操作

安装包

1
2
3
pip install package_name              # 最新版本
pip install package_name==1.0.4       # 指定版本
pip install 'package_name>=1.0.4'     # 最小版本

升级包

1
pip install --upgrade package_name

卸载包

1
pip uninstall package_name

搜索包

1
pip search package_name

查看指定包的详细信息

1
pip show -f package_name

列出安装的包

1
pip list

查看可升级的包

1
pip list -o

升级pip

1
2
pip install --upgrade pip
python -m pip install --upgrade pip

安装whl文件

下载whl文件(链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/),之后使用以下命令即可。(最后是whl文件的路径)

1
pip install ***.whl

添加国内源

临时使用

1
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple package_name

默认使用

Windows系统下,修改文件C:\Users\dell\pip\pip.ini,内容为:

1
2
3
[global] 
timeout = 60000
index-url = https://pypi.tuna.tsinghua.edu.cn/simple 

Linux系统下,修改文件~/.pip/pip.conf,内容为:

1
2
3
4
[global] 
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn

之后只要直接pip install package_name就可以默认使用国内源了。

vim

参考:https://coolshell.cn/articles/5426.html

Normal模式:打开vim后的模式,无法编辑,可以输入各种命令。

Insert模式:可以编辑的模式。

基础操作

  • iInsert 模式,按 ESC 回到 Normal 模式。(在Normal模式下按下键盘i就变成Insert模式了)
  • x → 删当前光标所在的一个字符。
  • :wq → 存盘 + 退出 (:w 存盘, :q 退出)
  • dd → 删除当前行,并把删除的行存到剪贴板里
  • p → 粘贴剪贴板
  • hjkl →移动光标,也可以使用光标键 (←↓↑→). 注: j 就像下箭头。
  • :help <command> → 显示相关命令的帮助。也可以就输入 :help 而不跟命令(退出帮助需要输入:q

各种插入模式

  • a → 在光标后插入
  • o → 在当前行后插入一个新行
  • O → 在当前行前插入一个新行
  • cw → 替换从光标所在位置后到一个单词结尾的字符

光标移动

行内移动

  • 0 → 数字零,到行头
  • ^ → 到本行第一个不是blank字符的位置(blank字符就是空格,tab,换行,回车等)
  • $ → 到本行行尾
  • g_ → 到本行最后一个不是blank字符的位置。

行间移动

  • NG :N → 到第N行 (如:10G:10,跳转到第10行)
  • gg → 到第一行(相当于1G:1
  • G → 到最后一行

文本匹配移动

  • /pattern → 搜索 pattern 的字符串(如果搜索出多个匹配,可按n键到下一个)

  • % : 匹配括号移动,包括 (, {, [。(需要把光标先移到括号上)
  • # → 匹配光标当前所在的单词,移动光标到上一个匹配单词
  • * → 匹配光标当前所在的单词,移动光标到下一个匹配单词
  • w → 到下一个单词(字母,数字和下划线组成的单词)的开头
  • e → 到下一个单词(字母,数字和下划线组成的单词)的结尾
  • W → 到下一个单词(用空白符分割的单词)的开头
  • E → 到下一个单词(用空白符分割的单词)的结尾

拷贝/粘贴

  • Pp→ 粘贴
  • yy → 拷贝当前行当行于 ddP

Undo/Redo

  • u → undo
  • <Ctrl-r> → redo

文件操作

  • :e <path/to/file> → 打开一个文件
  • :w → 存盘
  • :saveas <path/to/file> → 另存为 <path/to/file>
  • :xZZ:wq → 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车)
  • :q! → 退出不保存
  • :qa!→ 强行退出所有的正在编辑的文件,就算别的文件有更改。
  • :bn:bp → 可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。

重复指令

  • . → (小数点) 可以重复上一次的命令
  • N <command> → 重复某个命令N次

举例

  • 2dd → 删除2行
  • 3p → 粘贴文本3次
  • 100idesu [ESC] → 会写下100次”desu”
  • . → 重复上一个命令,即100 “desu“
  • 3. → 重复 3 次 “desu” (注意:不是 300)

命令和光标移动联动

<start position><command><end position>

例如 0y$ 命令意味着:

  • 0 → 先到行头
  • y → 从这里开始拷贝
  • $ → 拷贝到本行最后一个字符

例如 ye,从当前位置拷贝到本单词的最后一个字符

例如 y2/foo 来拷贝2个 “foo” 之间的字符串。【2/fooN <command>,即重复/foo2次】

移动和查找进阶

  • fa → 到下一个为a的字符处,也可以fs到下一个为s的字符。
  • t, → 到逗号前的第一个字符。逗号可以变成其它字符。
  • 3fa → 在当前行查找第三个出现的a。
  • FT → 和 ft 一样,只不过是相反方向。
  • dt" → 删除所有的内容,直到遇到双引号 "

Visual模式

  • v → 字符可视化模式,文本选择是以字符为单位的。
  • V → 行可视化模式,文本选择是以行为单位的。
  • <Ctrl-v> → 块可视化模式,可以选择的是一个矩形内的文本。

注:在Windows下的vim,需要使用 <Ctrl-q> 而不是 <Ctrl-v><Ctrl-v> 是拷贝剪贴板。

举例:

在字符可视化模式中,用6l命令就可以选中光标右侧的6个字符。

在行可视化模式下,用2j命令就可以选中当前行及其随后2行。

在块可视化模式下,用2l命令向右移动,然后使用3j命令向下移动,就可以选中4行2列的文本块。

对选中的行进行操作:

  • J → 把所有的行连接起来变成一行
  • <> → 左右缩进
  • = → 自动给缩进

在选中的行前边插入:

  • 0 → 到行头
  • <Ctrl-v> → 开始块操作
  • 选中相关的行
  • I-- [ESC] → I是插入,插入“--”,按ESC键来为每一行生效。

在选中的行后边插入:

  • <Ctrl-v>→ 开始块操作
  • 选中相关的行
  • $ → 到行尾
  • A-- [ESC] → A是插入,插入“--”,按ESC键来为每一行生效。

自动提示

Insert 模式下,可以输入一个词的开头,然后按 <Ctrl-p>或是<Ctrl-n>,自动补齐功能就出现了。

分屏

  • :split → 创建分屏
  • :vsplit→ 创建垂直分屏
  • <Ctrl-w> <dir>dir就是方向,可以是 hjkl 或是 ←↓↑→ 中的一个,其用来切换分屏。
  • <Ctrl-w>_ (或 <Ctrl-w>|) → 最大化尺寸 (<Ctrl-w>| 垂直分屏)
  • <Ctrl-w>+ (或 <Ctrl-w>-) → 增加尺寸

tmux

参考:http://www.ruanyifeng.com/blog/2019/10/tmux.html

简介

Tmux 是一个终端复用器(terminal multiplexer)

打开一个终端窗口(terminal window,简称”窗口”),在里面输入命令。用户与计算机的这种临时的交互,称为一次”会话”(session)。会话的一个重要特点是:打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。

Tmux 是会话与窗口的”解绑”工具,将它们彻底分离。

安装

1
sudo apt-get install tmux

启动和退出

启动

1
tmux

启动 Tmux 窗口,底部有一个状态栏。状态栏的左侧是窗口信息(编号和名称),右侧是系统信息

退出

1
2
3
exit
# 快捷键
ctrl+d

会话操作

新建会话

第一个启动的 Tmux 窗口,编号是0,第二个窗口的编号是1,以此类推。

1
2
# 指定会话名称
tmux new -s <session-name>

分离会话

在 Tmux 窗口中,按下Ctrl+b d或者输入tmux detach命令,就会将当前会话与窗口分离。

1
2
3
tmux detach
# 快捷键
ctrl+b d

之后会退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行。

列出全部会话

1
2
3
4
tmux ls
tmux list-session
# 快捷键
ctrl+b s

接入会话

1
2
3
4
5
# 使用会话编号
tmux attach -t 0

# 使用会话名称
tmux attach -t <session-name>

杀死会话

1
2
3
4
5
# 使用会话编号
tmux kill-session -t 0

# 使用会话名称
tmux kill-session -t <session-name>

切换会话

1
2
3
4
5
# 使用会话编号
tmux switch -t 0

# 使用会话名称
tmux switch -t <session-name>

重命名会话

1
2
3
4
# 使用会话编号 0
tmux rename-session -t 0 <new-name>
# 快捷键 重命名当前会话
ctrl+b $

会话快捷键

  • Ctrl+b d:分离当前会话。
  • Ctrl+b s:列出所有会话。
  • Ctrl+b $:重命名当前会话。

窗格操作

Tmux 可以将窗口分成多个窗格(pane),每个窗格运行不同的命令。

划分窗格

1
2
3
4
5
# 划分上下两个窗格
tmux split-window

# 划分左右两个窗格
tmux split-window -h

移动光标

1
2
3
4
5
6
7
8
9
10
11
# 光标切换到上方窗格
tmux select-pane -U

# 光标切换到下方窗格
tmux select-pane -D

# 光标切换到左边窗格
tmux select-pane -L

# 光标切换到右边窗格
tmux select-pane -R

交换窗格位置

1
2
3
4
5
# 当前窗格上移
tmux swap-pane -U

# 当前窗格下移
tmux swap-pane -D

窗格快捷键

  • Ctrl+b %:划分左右两个窗格。
  • Ctrl+b ":划分上下两个窗格。
  • Ctrl+b <arrow key>:光标切换到其他窗格。<arrow key>是指向要切换到的窗格的方向键,比如切换到下方窗格,就按方向键
  • Ctrl+b ;:光标切换到上一个窗格。
  • Ctrl+b o:光标切换到下一个窗格。
  • Ctrl+b {:当前窗格与上一个窗格交换位置。
  • Ctrl+b }:当前窗格与下一个窗格交换位置。
  • Ctrl+b Ctrl+o:所有窗格向前移动一个位置,第一个窗格变成最后一个窗格。
  • Ctrl+b Alt+o:所有窗格向后移动一个位置,最后一个窗格变成第一个窗格。
  • Ctrl+b x:关闭当前窗格。
  • Ctrl+b !:将当前窗格拆分为一个独立窗口。
  • Ctrl+b z:当前窗格全屏显示,再使用一次会变回原来大小。
  • Ctrl+b Ctrl+<arrow key>:按箭头方向调整窗格大小。
  • Ctrl+b q:显示窗格编号。

窗口管理

Tmux 允许新建多个窗口。

新建窗口

1
2
3
4
tmux new-window

# 新建一个指定名称的窗口
tmux new-window -n <window-name>

切换窗口

1
2
3
4
5
# 切换到指定编号的窗口
tmux select-window -t <window-number>

# 切换到指定名称的窗口
tmux select-window -t <window-name>

重命名窗口

1
tmux rename-window <new-name>

窗口滚动

直接使用鼠标滚轮不能实现页面滚动,按Ctrl+B,再按[,就可以用鼠标滑轮滚动了,按q退出。

Ctrl+b [

窗口快捷键

  • Ctrl+b c:创建一个新窗口,状态栏会显示多个窗口的信息。
  • Ctrl+b p:切换到上一个窗口(按照状态栏上的顺序)。
  • Ctrl+b n:切换到下一个窗口。
  • Ctrl+b <number>:切换到指定编号的窗口,其中的<number>是状态栏上的窗口编号。
  • Ctrl+b w:从列表中选择窗口。
  • Ctrl+b ,:窗口重命名。

其他命令

1
2
3
4
5
6
7
8
9
10
11
# 列出所有快捷键,及其对应的 Tmux 命令
tmux list-keys

# 列出所有 Tmux 命令及其参数
tmux list-commands

# 列出当前所有 Tmux 会话的信息
tmux info

# 重新加载当前的 Tmux 配置
tmux source-file ~/.tmux.conf

转载请标明如下内容:

本文作者:姜佳伟

本文链接:https://aptx1231.github.io/2020/12/07/%E5%B8%B8%E7%94%A8%E5%B7%A5%E5%85%B7%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/

Github:aptx1231