babunhtml
Babun的特性: 預裝了Cygwin以及許多的插件 默認的命令行安裝工具,沒有管理員權限要求。 預裝了 pact工具,一個高級的包管理器,相似 apt-get或yum xTerm-256兼容的控制檯 支持Http(s)的代理 面向插件的架構 配置了 git 和 shell 集成 oh-my-zsh 自動更新機制 集成右鍵菜單,在此打開Babun Cygwin Babun的核心就是Cygwin,不過它通過了配置。Cygwin是一個不錯的工具,可是有不少問題須要花一些時間來配置它,讓它易於應用。Babun作了一些配置,而且包含了不少重要的工具包,使得它很是易用。 Package manager Babun提供了一個包管理器,pact。相似於apt-get 或 yum。pact使得安裝,搜索,更新和刪除cygwin的工具包很是容易。pact --help快去看一下它怎麼使用吧。 Shell Babun的shell通過了微調,這樣能夠提供更好的用戶體驗。有兩個預配置的shell - bash 和 zsh,能夠立刻使用。zsh是默認的shell。Babun的shell具備以下的特徵: 語法高亮 UNIX工具 軟件開發工具 git改進 自定義的腳本和別名 還有一些其餘功能 Console Mintty是在babun中用的控制檯,它具備xterm-256模式的特徵,良好字體簡潔畫面。 Proxying Babun支持HTTP代理。只須要在Home目錄下的.babunrc文件中配置可信的HTTP代理服務器,執行source .babunrc 開啓HTTP代理便可。如今還不支持Socks代理 Developer tools Babun提供了許多軟件包,方便的工具和腳本,使得咱們的工做更容易完成。包括以下的工具: 編程語言 Python,Perl等等 git 進行少量修改,添加了不少別名 UNIX工具,好比grep,wget,curl等 vcs 包括svn,git oh-my-zsh 自定義的腳本,例如pbcopy,pbpaste,babun等 插件結構 Babun有一個很是小的微內核,cygwin,一些bash腳本,以及一個插件結構。它的意思是幾乎全部的工具均可以以插件形式放入babun的世界。當前babun的插件有以下的幾個: cacert,core,git,oh-my-zsh,pact,cygdriver,dist,shell Auto-update 自更新時一個很是暖心的功能。許多Cygwin工具只是簡單的bash腳本,一旦安裝了,就沒法很好地獲取新的版本。或者刪除舊版本或者使用更新的版本覆蓋它,這樣就丟掉了以前的設置。 Babun包含了一個自動更新的功能,它能夠更新微內核,插件甚至是所基於的cygwin。你的本地設置或自定義保存在home目錄,在更新中home目錄下的文件不會被刪除或覆蓋。 Installer Babun添加了一個靜默命令行安裝腳本,安裝時不須要Windows的管理員權限
下載完成以後解壓babun,直接雙擊目錄中install.bat腳本(需管理員權限)進行安裝。幾分鐘以後自動安裝完成,默認會被安裝在%userprofile%\.babun
目錄下。python
經過cmd命令行在執行install.bat時指定參數/t或/target指定安裝的目錄。linux
執行:babun.bat /t c:\babun
git
例如安裝到D:\Program Files\babun裏面,就直接命令github
install.bat /t "D:\Program Files\babun"
會自動在babun文件夾內生產.babun文件夾shell
若是按照這種方式安裝,那麼最好配置環境變量,下面整合到cmder裏面的時候用編程
默認的安裝好以後會在c:\babun目錄下生成一個.babun的目錄,babun全部文件都在這個目錄中。注意安裝目錄最好不要有空格,這是cygwin要求的。windows
雖然.babun在%babun%中,可是還有不少要安裝的插件並不在%babun%,若是想設置成可遷移的,在環境變量中添加bash
效果:服務器
按照這種方式安裝的話,git可能會出現問題,若是你win裏面已安裝git,能夠將%userprofile%內的.gitconfig替換%babun%內的.gitconfig,主要是別名,用戶名
這樣的話,雖然git均可以使用,不論是自己git bash,仍是babun內的git,使用感受上是一致的,可是實際上是兩套git,能夠刪除掉babun中的git,babun命令裏面自動就會使用window中安裝的。
其實設置HOME環境變量不太好,可能不少軟件會有問題,目前僅發現git,網上還有Emacs,可能還會有其餘的。
安裝完畢後,通常須要如下兩個命令檢查
babun check(用於判斷環境是否正確)
babun update(用於判斷是否有新的更新包)
默認根目錄
%userprofile%\.babun\cygwin\home\qhong
babun默認編碼是UTF-8的,而windows的cmd命令輸出是GBK編碼的,因此在Babun裏面運行ipconfig等windows命令時,中文會是一大堆亂碼。
解決:在babun自帶的shell(mintty)右上角右鍵options-text,在character set選擇default或者GBK,以後執行ipconfig等cmd內置的命令時就正常顯示中文了。
若是把Babun的編碼改爲GBK的話,命令的中文輸出卻是正常了,PS1卻會出現一個亂碼字符,如圖
去掉命令提示符亂碼
babun內置兩個shell,默認是zsh,另外一個是bash,設置成中文後命令提示符最後會有一個亂碼字符,看着很不爽,要修改PS1變量去掉。把亂碼字符替換爲:>>
bash
vi /usr/local/etc/babun.bash
PS1="\[\033[00;34m\]{ \[\033[01;34m\]\W \[\033[00;34m\]}\[\033[01;32m\] \$( git rev-parse --abbrev-ref HEAD 2> /dev/null || echo "" ) \[\033[01;31m\]>>\[\033[00m\]"
zsh
vi ~/.oh-my-zsh/custom/babun.zsh-theme PROMPT='%{$fg[blue]%}{ %c } \ %{$fg[green]%}$( git rev-parse --abbrev-ref HEAD 2> /dev/null || echo "" )%{$reset_color%} \ %{$fg[red]%}%(!.#.>>)%{$reset_color%} '
注:將編碼修改爲GBK後,ls命令中文文件名的會出現亂碼。最好在Babun環境中使用UTF-8編碼,ipconfig等windows指令用cmder或默認cmd執行就好了。將Babun整合到ConEmu/cmder這樣改好後命令提示符就變成: { ~ } >>
添加國內鏡像:(C:\Users\qhong\.babun\cygwin\home\qhong\.pact),發現默認的也挺快的,不必定要添加
PACT_REPO=http://mirrors.sohu.com/cygwin/
整個文件爲:
PACT_REPO=http://mirrors.sohu.com/cygwin/ PACT_REPO=http://mirrors.kernel.org/sourceware/cygwin/ PACT_REPO=http://mirrors.neusoft.edu.cn/cygwin/ # POPULAR HTTP REPOSITORIES # http://mirror.switch.ch/ftp/mirror/cygwin/ # POPULAR FTP REPOSITORIES # ftp://mirror.switch.ch/mirror/cygwin/ # ftp://ftp.inf.tu-dresden.de/software/windows/cygwin32/ # ftp://mirrors.kernel.org/sourceware/cygwin/ # ftp://gd.tuwien.ac.at/gnu/cygwin/ # ftp://ftp.iij.ad.jp/pub/cygwin/ # ftp://mirror.cpsc.ucalgary.ca/cygwin.com/ # FULL LIST # http://cygwin.com/mirrors.html
整合cmder:
在cmder窗口右上角右鍵Settings>Startup>Tasks,點+號添加一個新task,命名爲babun。
在Task parameters中填入
/icon "%userprofile%\.babun\cygwin\bin\mintty.exe" /dir "%userprofile%"
在Commands中填入如下任意一種均可以
#默認使用ZSH %userprofile%\.babun\cygwin\bin\mintty.exe /bin/env CHERE_INVOKING=1 /bin/zsh.exe #使用自定義mintty配置 %userprofile%\.babun\cygwin\bin\mintty.exe -t "%userprofile%\.babun\cygwin\etc\minttyrc"
若是不是採用默認方式安裝的,且配置了babun環境變量,那麼將userprofile替換成babun便可!
效果:
經常使用軟件安裝:
#安裝tmux pact install tmux #安裝screen pact install screen #安裝zip pact install zip #安裝svn pact install subversion #安裝lftp命令 pact install lftp #安裝p7zip命令 pact install p7zip #基於openssh的socks https代理 pact install connect-proxy #安裝linux基礎命令行工具more/col/whereis等命令 pact install util-linux #安裝dig命令 pact install bind-utils #安裝Telnet等經常使用網絡命令 pact install inetutils #安裝python環境 pact install python pact install python-crypto
提升babun啓動速度,關閉開啓檢查:
.babunrc文件中取消下面的註釋:
export DISABLE_CHECK_ON_STARTUP="true"
babun內zsh使用:
查看當前環境內的shell:
{ ~ } » echo $SHELL ~ /bin/zsh
查看系統自帶哪些shell:
{ ~ } » cat /etc/shells ~ /bin/sh /bin/ash /bin/bash /bin/dash /bin/mksh /bin/pdksh /bin/posh /bin/tcsh /bin/zsh /usr/bin/sh /usr/bin/ash /usr/bin/bash /usr/bin/dash /usr/bin/mksh /usr/bin/pdksh /usr/bin/posh /usr/bin/tcsh /usr/bin/zsh
https://github.com/babun/babun