zoukankan      html  css  js  c++  java
  • Shell 命令行工具 Cmder Babun Zsh [MD]

    博文地址

    我的GitHub 我的博客 我的微信 我的邮箱
    baiqiantao baiqiantao bqt20094 baiqiantao@sina.com

    目录

    Cmder

    官网

    Cmder是一个增强型命令行工具,不仅可以使用windows下的所有命令,更可以使用linux的命令、shell命令

    简介

    下载的时候,会有两个版本,分别是mini与full版;唯一的差别在于有没有内建msysgit工具,这是Git for Windows的标准配备;全安装版 cmder 自带了 msysgit, 压缩包 23M, 除了 git 本身这个命令之外, 里面可以使用大量的 linux 命令;比如 grep, curl(没有 wget); 像vim, grep, tar, unzip, ssh, ls, bash, perl 对于爱折腾的Coder更是痛点需求。

    Cmder是款解压即可用的软件,解压后将cmder文件夹放到你想放的位置,直接进入文件夹双击Cmder.exe即可使用。

    特点

    • 便携,解压即可用
    • 自带gitlscurl等命令
    • 可设置命令别名
    • 丰富的颜色主题(Solarized、Twilight、Ubuntu、xterm、Monokai,可自定义)、可定制字体
    • 支持tab分页、同屏多端口(支持水平分割、垂直分割)
    • 支持自定terminal,无论是CMD、PowerShell、bash都可以,还可以注入环境变量

    配置

    解决中文乱码问题

    Cmder右下角下拉列表中,打开settings面板,找到Startup -> Envrioment选项
    在下面的文本框里添加一行:set LANG=zh_CN.UTF-8
    然后重启cmder,使用ls命令查看目录下的文件,带中文的文件名都能正常显示了。

    可是我用这个方法并没有成功,最后找到解决办法是,在Settings->Startup->Environment 添加:

    set LANG=zh_CN.UTF-8
    set LC_ALL=zh_CN.utf8
    

    添加到右键菜单

    以管理员身份打开Cmder,在Cmder命令窗口中使用快捷键Ctrl + t,在弹出界面上确保Run as current user Run as administrator这两项已勾选(PS:勾选new window可以打开多窗口功能),然后点start

    在命令行输入:Cmder.exe /REGISTER ALL

    cmder /register user/all  //注册
    cmder /unregister user/all  //取消注册
    

    然后在文件夹上右键点击Cmder here,就能在Cmder里进入该目录

    添加至环境变量

    右键我的电脑,单击“属性”,单击左侧“高级系统设置”,单击最下面的“环境变量”
    在下面的窗口中找到path,选中后点击“编辑”,将你的Cmder文件夹的全路径放进去,然后一路点击确定
    win + r打开运行窗口,输入cmder即可打开cmder了

    修改命令提示符号

    cmder默认的命令提示符是 λ ,如果想改成常见的 $ ,具体操作如下:

    • 打开cmder安装目录下的vendorclink.lua文件
    • 找到lambda = "λ"lambda = "("..env..")λ",把λ替换成$
    • 重启cmder(powerShell需要另行设置)

    设置 current directory

    cmder其实使用的是ComEmu终端,当我们新建一个相同终端的时候,想要从当前的目录开启一个新的终端而不是从startup目录开启。首先需要修改一下task的配置。

    参见 What you shall do to get CD support

    自定义aliases

    cmder还增加了alias功能,它让你用短短的指令执行一些常见但指令超长又难以记忆的语法;比如 ls cls等等
    打开cmder安装目录下的configuser-aliases.cmd文件,根据自己的需要进行编辑快捷语句。
    如:..=cd .. 表示输入..回车即返回上一级目录

    终端设置

    StartUp

    配置打开终端执行的一些任务和环境变量设置

    选择Startup -- Task,修改某一模式下输入框中的内容就可以修改启动参数

    设置bash作为默认开启的选项

    打开设置win + alt + p,选择Startup -- Specified named task,这儿可以选择默认启动的终端类型,如cmder、bash、cmd、powershell、git bash等

    打开新标签

    快捷键 Ctrl + t 后勾选

    更换主题

    内置了几款不错的主题,当然如果你觉得不合适,当然也支持自己设定。

    Feature -- Colors -- Schemes

    更改背景图片

    Main -- Background -- Background image

    常用快捷键

    • Ctrl+T 建立新页签
    • 鼠标中键点击 关闭页签
    • Ctrl+n 快速切换到第n个页签
    • Alt + enter 切换到全屏状态
    • Ctr+r 历史命令搜索
    • Win+Alt+P 设置
    • Ctrl+W 关闭页签
    • Ctrl+Tab 切换页签
    • Alt+F4 关闭所有页签
    • Tab 自动路径补全

    其他工具

    babun

    官网
    参考

    • 基于 cygwin 的 windows shell
    • Babun - a windows shell you will love

    babun是windows上的一个第三方shell,在这个shell上面你可以使用几乎所有linux、unix上面的命令,他几乎可以取代windows的shell。

    Babun 是近年来最好的在 Windows 下使用 Linux Shell 的一站式解决方案。
    Babun 虽然没有多少技术创新,但是它博采众长,追求极致的体验,把其他同类软件狠狠的甩在了后面。
    无论是被迫使用 Windows 的 Linuxer,还是离不开 Windows 却又羡慕 Linux 下强大的命令行工具的 PC 用户,Babun 都是一个不容错过的好东西。

    背景

    多年以来,无数工程师都试图在 Windows 上制造出不输 Linux 太多的命令行体验,然而绝大部分以失败告终。曾经努力的人,或者回到可爱的 Linux 上,或者进入高贵冷艳的 OS X 的世界。

    前辈们为我们留下了一个叫做 Cygwin 的软件集,让我们在需要的时候可以从 Windows 上启动 bash,安装常见的自由软件。

    我曾经也有过一段不得不使用 Windows 进行开发的日子,在那段黑暗的日子里,Cygwin 无疑是一缕春风,一道阳光,给我的笔记本带来了些许效率的色彩。然而,就使用体验来说,Cygwin 与 Linux 相去甚远。且不说软件数量、版本这个硬伤,单是安装软件这一操作,就让人感觉繁琐无比。

    虽然 Cygwin 号称 Get that Linux feeling on Windows,给人的感觉却一点都不 Linux。

    幸运的是,我们现在有了 Babun,一个 Windows 上的开箱即用的壳程序,基于 Cygwin,胜于 Cygwin。

    简介

    安装 Babun 十分简单,解压发行包之后,执行里面的 install.bat 脚本,然后静静等待执行结束即可,安装结束后 Babun 会自动运行。Babun 默认安装在 %userprofile%.babun 目录,可以通过执行 install.bat 脚本时传递 /target 参数来指定安装目录。

    To install in a different directory, just use the /t switch (or /target)
    e.g install.bat /t "C:Androidabun-1.2.0"

    默认根目录:%userprofile%.babuncygwinhomeusername

    对已存在的 Cygwin 的安装没有干扰

    Babun具有以下特性:

    • Pre-configured Cygwin with a lot of addons 预先配置好的 Cygwin 以及一系列插件
    • Silent command-line installer, no admin rights required 命令行静默安装程序,无需管理员权限
    • pact - advanced package manager (like apt-get or yum) 先进的安装包管理器
    • xTerm-256 compatible console 拥有256色的兼容控制台
    • HTTP(s) proxying support 代理支持
    • Plugin-oriented architecture 面向插件的架构
    • Pre-configured 预先配置好的 git and shell
    • Integrated 集成了 oh-my-zsh,执行echo $SHELL后为/bin/zsh,在git bash中执行后为/usr/bin/bash
    • Auto update feature 自动更新功能
    • "Open Babun Here" context menu entry 上下文菜单
    • Babun 默认集成了 Vim,内置了 PythonPerl 等解释器,默认的终端模拟器是 Mintty。

    扩展

    Cygwin
    babun的核心包括一个预配置的Cygwin。cygwin是一个非常好的工具,但有很多使用技巧,使你能够节省大量的时间。babun解决了很多问题,它里面包含了很多重要的软件包,使你能够第一时间能够使用它们。

    包的管理
    babun的包管理在shell输入:pact,这类似于:apt-get或yum,来非常方便的管理软件包,安装、升级、搜索和删除,让你省去很多麻烦,shell输入pact –help能够获得帮助信息。

    shell
    babun的shell通过调整,已达到最佳的用户体验,babun有两个配置之后马上使用的shell(默认使用zsh),babun的shell具有以下的特点:

    • 语法高亮
    • 具有unix的工具
    • 软件开发工具
    • git-语义提示
    • 自定义脚本和别名
    • 等等………

    Console
    babun支持HTTP代理,只需添加地址和HTTP代理服务器的凭据。babunrc文件所在文件夹执行源babunrc启用HTTP代理。目前还不支持SOCKS代理。

    开发者工具
    babun提供多种方便的工具和脚本,是你的开发工作更轻松,具有的功能如下

    • 编程语言(python,Perl等)
    • git(各种各样的别名调整)
    • UNIX工具((grep, wget, curl, etc)
    • vcs (svn, git)
    • oh-my-zsh
    • 自定义脚本(pbcopy, pbpaste, babun, etc)

    显示中文

    babun默认编码是UTF-8的,而windows的cmd命令输出是GBK编码的,所以在Babun里面运行ipconfig等windows命令时,中文会是一大堆乱码。

    解决:在babun自带的shell(mintty)右上角右键options -- text -- character set -- default或者GBK,在选择之后执行ipconfig等cmd内置的命令时就正常显示中文了。

    注:将编码修改成GBK后,ls命令中文文件名的会出现乱码。最好在Babun环境中使用UTF-8编码,ipconfig等windows指令用cmder或默认cmd执行就行了。

    oh my zsh

    官网
    GitHub仓库
    参考

    • 基于 linux shell - zsh 的配置方案
    • Your terminal never felt this good before.

    Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with thousands of helpful functions, helpers, plugins, themes, and a few things that make you shout...

    背景

    Zsh 介绍

    • Zsh 兼容 Bash,据传说 99% 的 Bash 操作 和 Zsh 是相同的
    • Zsh 官网:http://www.zsh.org/
    • 默认 CentOS / Ubuntu / Mac 系统用的是 Bash,倒也不是说 Bash 不好,而是说我们有更好的选择。

    oh-my-zsh 帮我们整理了一些常用的 Zsh 扩展功能和主题,我们无需自己去捣搞 Zsh,直接用 oh-my-zsh 就足够了。


    shell的类型有很多种,linux下默认的是bash,虽然bash的功能已经很强大,但对于以懒惰为美德的程序员来说,bash的提示功能不够强大,界面也不够炫,并非理想工具。
    zsh的功能极其强大,只是配置过于复杂,起初只有极客才在用。
    后来,有个穷极无聊的程序员可能是实在看不下去广大猿友一直只能使用单调的bash, 于是他创建了一个名为 oh-my-zsh 的开源项目 。

    自此,只需要简单的安装配置,小白程序员们都可以用上高档大气上档次,狂拽炫酷吊炸天的oh my zsh

    安装 zsh 和 oh my zsh

    查看系统当前使用的shell

    $ echo $SHELL
    

    查看系统shell列表

    $ cat /etc/shells
    

    用yum安装zsh

    $ yum -y install zsh
    

    切换shell为zsh

    $ chsh -s /bin/zsh
    

    重启后,查看当前shell

    安装 git

    sudo yum install -y git
    

    使用curl安装 oh my zsh

    sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
    

    或使用wget安装

    sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
    

    这个过程可能会有点慢,或者需要重试几次

    接下来只需简单的配置,就可以享受oh-my-zsh的强大

    安装主题

    oh-my-zsh有很多漂亮的 主题

    也可以到的安装目录.oh-my-zsh hemes下查看可用的主题。

    修改主题:

    $ vim ~/.zshrc
    

    将ZSH_THEME改成你喜欢的主题名称

    ZSH_THEME="robbyrussell"
    

    重启即可

    有些主题会使用到这些特殊的字符,这时需要安装所需字体库才可以

    2019-8-25

  • 相关阅读:
    进程池,线程池,协程,gevent模块,协程实现单线程服务端与多线程客户端通信,IO模型
    线程相关 GIL queue event 死锁与递归锁 信号量l
    生产者消费者模型 线程相关
    进程的开启方式 进程的join方法 进程间的内存隔离 其他相关方法 守护进程 互斥锁
    udp协议 及相关 利用tcp上传文件 socketserver服务
    socket套接字 tcp协议下的粘包处理
    常用模块的完善 random shutil shevle 三流 logging
    day 29 元类
    Django入门
    MySQL多表查询
  • 原文地址:https://www.cnblogs.com/baiqiantao/p/11408160.html
Copyright © 2011-2022 走看看