Linux常用软件

vim最常用: 常用度从高至低

A level

  • i:insert模式
  • :wq:存盘退出
  • yy:复制一整行
  • dd:删除当前行,并且添加至剪贴板
  • p:粘贴剪贴板
  • o:当前行后插入行
  • 0:移动光标到行头
  • $:移动光标到行尾
  • gg:移动光标到第一行
  • G:移动光标到最后一行
  • u: undo
  • C-r: redo
  • 搜索str1并且替换为str2:%s/str1/str2/g (这个比较好用)

B level

  • gg:光标移动到页面顶部
  • :e:打开一个文件
  • :saveas:存盘
  • :q!:退出不保存
  • 多行复制
1
2
3
4
按v进入可视模式;按y复制;按p粘贴

将第9行至第15行的数据,复制到第16行
:9,15 copy 16

vimium篇(浏览器工具)

gg:到页面顶部
G:到页面底部
d:向下滑动一页
u:向上滑动一页
f:在当前网页打开链接
F:在新页面打开链接

多窗口管理工具 Screen

最常用命令

  • 创建新的窗口会话

    1
    screen 或者 screen -S yourname
  • 重新连接会话

    1
    screen -r <screen_pid>
  • 补充:若意外断开后无法进入会话,则需要:

    1
    screen -D -r <screen_pid>
  • 查看所有screen会话

    1
    screen -ls
  • 暂时断开会话

    1
    control+A d
  • 停止当前窗口

    1
    control+A k
  • 清除dead会话:

    1
    screen -wipe

virtualenv环境管理

  1. 安装

    1
    pip install virtualenv
  2. 为工程创建虚拟环境

    1
    2
    3
    4
    $ cd project_dir
    $ virtualenv venv_name
    为环境选择python解释器:
    $ virtualenv -p /usr/bin/python2.7 venv_name
  3. 使用虚拟环境:

    1
    $ source venv_name/bin/activate
  4. 停用虚拟环境

    1
    $ . venv_name/bin/deactivate

anaconda

  1. 下载anaconda

    1
    $ wget anaconda_latest_version_url
  2. 安装anaconda

    1
    $ bash anaconda_latest_version
  3. 配置环境变量

    1
    2
    echo 'export PATH="~/your_anaconda_version/bin:$PATH"' >> ~/.bashrc
    source ~/.bashrc
  4. Conda环境管理

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    # 创建环境
    conda create --name your_env_name python=your_python_version
    # 激活环境
    source activate your_env_name
    # 停用环境
    deactivate your_env_name
    # 删除环境
    conda remove -name your_env_name --all
    # 查看已安装的环境
    conda info -e

JupyterNotebook

大名鼎鼎的软件。
我平时使用Pycharm作为IDE。然而最近学习Yjango的代码发现:演示教学方面JupyterNotebook有着得天独厚的优势(cell功能)。

命令模式常用指令

  • jupyter notebook: 从控制台打开jupyternotebook
  • Enter: 进入编辑模式
  • Shift-Enter: 运行cell,自动跳转下一个cell
  • Ctrl-Enter: 运行cell
  • y: cell进入代码状态
  • m: cell进入markdown状态
  • a: 上方插入cell
  • b: 下方插入cell
  • z: 恢复删除的最后一个cell
  • dd: 删除选中的cell
  • s: 保存文件

matplotlib集成

文件头加上如下代码可以在代码中显示图片。这个操作省去了一次性关闭一堆图片的麻烦。

1
%matplotlib inline

Commitizen

这个小工具专门负责减少commit -m时候的词穷感与code review时的无助感。

1. 安装(mac环境下)

  • brew install node 安装nodeJS
  • cnpm install -g commitizen 使用cnpm全局安装commitizen
  • cnpm install -g

2. 使用

  • cnpm install -g cz-conventional-changelog 加载Angular规范模板文件
  • echo '{ "path": "cz-conventional-changelog" }' > ~/.czrc 使用Angular规范模板文件
  • git cz 相当于 git commit -m

3. 使用进阶

  1. 第一步填写type
    • feat :新功能
    • fix :修复bug
    • doc : 文档改变
    • style : 代码格式改变
    • refactor :某个已有功能重构
    • perf :性能优化
    • test :增加测试

实际使用效果图

  1. 第二步填写scope:此项为作用域,建议选项如下
    • $all :表示影响面大 ,如修改了项目框架会对整个程序产生影响。又或者全局文件
    • $loation: 表示影响小,某个小小的功能
    • $module:表示会影响某个模块 如登录模块、首页模块 、用户管理模块等等
    • 自定义也是一个可选项,但要以$作为开头

实际使用效果图

  1. 第三步填写其他信息:
    • subject:用来简要描述本次改动
    • body:具体的修改信息 应该尽量详细
    • footer:放置写备注啥的,如果是 bug ,可以把bug id放入

实际使用效果图

4. 使用终阶

生成Change log:

  • cnpm install -g conventional-changelog-cli 首先安装客户端
  • conventional-changelog -p angular -i CHANGELOG.md -s -r 0 直接生成log文件

实际使用效果图

Linux数据库常用命令

mysql

  • 启动mysql服务
    1
    2
    3
    4
    5
    mysql.server start
    ```
    - 打开mysql
    ```
    mysql -u root -p

参考与引用

  1. https://www.cnblogs.com/technologylife/p/6635631.html
  2. https://www.wangjingxian.cn/linux/41.html
  3. https://www.cnblogs.com/ctaodream/p/6066694.html
  4. http://www.ruanyifeng.com/blog/2016/01/commit_message_change_log.html
请zzy824喝杯咖啡
0%