-Shell 命令行工具 Cmder Babun Zsh MD

2019/08/25 15:52
阅读数 41
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱
MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina.com

目录

[TOC]

Cmder:window 下增强型的 cmd + bash

官网

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安装目录下的\vendor\clink.lua文件
  • 找到lambda = "λ"lambda = "("..env..")λ",把λ替换成$
  • 重启cmder(powerShell需要另行设置)

自定义aliases

cmder还增加了alias功能,它让你用短短的指令执行一些常见但指令超长又难以记忆的语法。

打开cmder安装目录下的\config\目录,此目录下有各种各样的文件,根据自己的需要对相应的文件进行扩展即可。

Readme.md

All config files must be in this folder. If there is no option选项 to set this folder directly, it has to be hardlinked硬链接.

  • user-aliases.cmd: aliases in cmd; called from vendor\init.bat; autocreated from vendor\user-aliases.cmd.default.
  • *.lua: clink碰撞 completions and prompt提示 filters; autoloaded after all prompt filter and clink completions are initialized; add your own. 其实就是类似TAB键的命令自动补全功能
  • user-profile.{sh|cmd|ps1}: startup files for bash|cmd|powershell tasks; called from their respective各自的 startup scripts in vendor\; autocreated from vendor\user-profile.{sh|cmd|ps1}.default on first start of such a task.
  • .history: the current commandline history; autoupdated on close 关闭后自动更新.
  • settings: settings for readline; overwritten on update.
  • ConEmu.xml: settings from ConEmu (=the UI of cmder -> Preferences); overwritten on update.

设置cmd下的昵称

user-aliases.cmd中设置

;= Add aliases below here
e.=explorer .
ls=ls --show-control-chars -F --color $*

设置bash下的昵称

user_profile.sh中设置

# 添加昵称
alias gs='git  status'
alias adbi='adb install'
alias e.='explorer .'

效果同在Git安装目录下的Git\etc\bash.bashrc中添加昵称是一样的。

常用终端设置

  • 设置语言:General -- Interface language -- 简体中文
  • 修改默认启动任务:General中最上面的选项,里面可选的任务是定义在 General -- 启动 -- 任务 -- 预定义任务 中的,你可以添加、移除、修改这些预定义的任务
  • 更换主题:General -- choose color Schemes,或者 Feature -- Colors -- Schemes,也可以在tab上右键选择View菜单下的样式
  • 字体设置:General -- fonts,勾选抗锯齿,注意把 adjust font size for monitor DPI 勾选上,否则显示会很难看
  • 大小和位置:General -- 大小和位置,勾选自动保存窗口大小及位置,最好也勾选上快闪至桌面边缘,即自动贴边
  • 外观:勾选多个consoles在一个conEmu窗口中,显示搜索栏,不显示工具类,总是显示数字
  • 背景:General -- Background,可设置背景图片及透明度
  • 标签栏:标签页总是显示,标签在底部,内部ctrl+tab切换,修改标签字体、最大宽度,双击标签栏和标签页的行为
  • 确认:创建、关闭等操作时是否需要确认
  • 任务栏:勾选仅活动控制台,不勾选总是显示任务栏状态区域图标
  • 设置bash作为默认开启的选项:General -- 启动 -- 启动指定任务 -- 选择默认启动的终端类型,如cmder、bash、cmd、powershell、git bash等
  • 设置自动打开上次关闭的tab:General -- Startup -- auto save/restore opened tabs
  • 打开一个新标签:快捷键 Ctrl + t ,选择启动task及相关配置
  • 更改背景透明度:General -- 特征 -- 透明度 -- 设置活动和非活动下的透明度及颜色
  • 修改快捷键:General -- 按键&宏,注意有一个隐藏未分配的选项
  • 设置选中内容的颜色和背景:General -- 按键&宏 -- 颜色索引,里面有几个鼠标及键盘选中文本的选项
  • 粘贴:General -- 按键&宏 -- 粘贴,单行、多行粘贴

常用快捷键

默认支持几乎所有BASH下的快捷键,但也有个别BASH下的快捷键是其他功能。

  • Ctrl+T 建立新页签
  • 鼠标中键点击 关闭页签
  • Ctrl+n 快速切换到第n个页签【alt+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:\Android\babun-1.2.0"

默认根目录:%userprofile%\.babun\cygwin\home\username

对已存在的 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:基于 linux shell - zsh 的配置方案

Your terminal never felt this good before.

官网 GitHub仓库 参考

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\themes下查看可用的主题。

修改主题:

$ vim ~/.zshrc

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

ZSH_THEME="robbyrussell"

重启即可

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

2019-8-25

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部