mirror of
https://github.com/dunwu/linux-tutorial.git
synced 2024-04-15 19:55:24 +08:00
70 lines
30 KiB
HTML
70 lines
30 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en-US">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
<title>oh-my-zsh 应用 | LINUX-TUTORIAL</title>
|
||
<meta name="generator" content="VuePress 1.8.2">
|
||
<link rel="icon" href="/linux-tutorial/favicon.ico">
|
||
<meta name="description" content="数据库教程">
|
||
|
||
<link rel="preload" href="/linux-tutorial/assets/css/0.styles.45d9d031.css" as="style"><link rel="preload" href="/linux-tutorial/assets/js/app.79a38eea.js" as="script"><link rel="preload" href="/linux-tutorial/assets/js/4.fb6e0f89.js" as="script"><link rel="preload" href="/linux-tutorial/assets/js/47.cc639f04.js" as="script"><link rel="preload" href="/linux-tutorial/assets/js/5.cb43ecfb.js" as="script"><link rel="prefetch" href="/linux-tutorial/assets/js/10.7933187b.js"><link rel="prefetch" href="/linux-tutorial/assets/js/11.b9b41530.js"><link rel="prefetch" href="/linux-tutorial/assets/js/12.70a5dba8.js"><link rel="prefetch" href="/linux-tutorial/assets/js/13.857dcc43.js"><link rel="prefetch" href="/linux-tutorial/assets/js/14.5a603a55.js"><link rel="prefetch" href="/linux-tutorial/assets/js/15.d217acb7.js"><link rel="prefetch" href="/linux-tutorial/assets/js/16.ad565eae.js"><link rel="prefetch" href="/linux-tutorial/assets/js/17.d43e9f56.js"><link rel="prefetch" href="/linux-tutorial/assets/js/18.aa00ff43.js"><link rel="prefetch" href="/linux-tutorial/assets/js/19.43ce44b3.js"><link rel="prefetch" href="/linux-tutorial/assets/js/20.5618e1ff.js"><link rel="prefetch" href="/linux-tutorial/assets/js/21.1c5a41d7.js"><link rel="prefetch" href="/linux-tutorial/assets/js/22.fbe9fdf1.js"><link rel="prefetch" href="/linux-tutorial/assets/js/23.a4fb0e74.js"><link rel="prefetch" href="/linux-tutorial/assets/js/24.e3a23b69.js"><link rel="prefetch" href="/linux-tutorial/assets/js/25.9896afe9.js"><link rel="prefetch" href="/linux-tutorial/assets/js/26.96164082.js"><link rel="prefetch" href="/linux-tutorial/assets/js/27.391033bb.js"><link rel="prefetch" href="/linux-tutorial/assets/js/28.703f74c2.js"><link rel="prefetch" href="/linux-tutorial/assets/js/29.02a952cb.js"><link rel="prefetch" href="/linux-tutorial/assets/js/30.7e13628f.js"><link rel="prefetch" href="/linux-tutorial/assets/js/31.c4652f75.js"><link rel="prefetch" href="/linux-tutorial/assets/js/32.05d2cbec.js"><link rel="prefetch" href="/linux-tutorial/assets/js/33.3b265df8.js"><link rel="prefetch" href="/linux-tutorial/assets/js/34.26330a03.js"><link rel="prefetch" href="/linux-tutorial/assets/js/35.417d706d.js"><link rel="prefetch" href="/linux-tutorial/assets/js/36.0ed775e0.js"><link rel="prefetch" href="/linux-tutorial/assets/js/37.34430c74.js"><link rel="prefetch" href="/linux-tutorial/assets/js/38.87d5e0ff.js"><link rel="prefetch" href="/linux-tutorial/assets/js/39.7b648b3e.js"><link rel="prefetch" href="/linux-tutorial/assets/js/40.3b7a219e.js"><link rel="prefetch" href="/linux-tutorial/assets/js/41.e727eee9.js"><link rel="prefetch" href="/linux-tutorial/assets/js/42.0134c187.js"><link rel="prefetch" href="/linux-tutorial/assets/js/43.175e982f.js"><link rel="prefetch" href="/linux-tutorial/assets/js/44.72d90888.js"><link rel="prefetch" href="/linux-tutorial/assets/js/45.d49955bd.js"><link rel="prefetch" href="/linux-tutorial/assets/js/46.a9c290ec.js"><link rel="prefetch" href="/linux-tutorial/assets/js/48.98c78321.js"><link rel="prefetch" href="/linux-tutorial/assets/js/49.a7c3afed.js"><link rel="prefetch" href="/linux-tutorial/assets/js/50.22d8c542.js"><link rel="prefetch" href="/linux-tutorial/assets/js/51.28055fcd.js"><link rel="prefetch" href="/linux-tutorial/assets/js/52.f8103df5.js"><link rel="prefetch" href="/linux-tutorial/assets/js/53.76541550.js"><link rel="prefetch" href="/linux-tutorial/assets/js/54.e78d2776.js"><link rel="prefetch" href="/linux-tutorial/assets/js/55.3ce3079c.js"><link rel="prefetch" href="/linux-tutorial/assets/js/56.832958c9.js"><link rel="prefetch" href="/linux-tutorial/assets/js/57.961ce896.js"><link rel="prefetch" href="/linux-tutorial/assets/js/58.6d6fbc82.js"><link rel="prefetch" href="/linux-tutorial/assets/js/59.d5e48112.js"><link rel="prefetch" href="/linux-tutorial/assets/js/6.c8f4721c.js"><link rel="prefetch" href="/linux-tutorial/assets/js/60.7927b23b.js"><link rel="prefetch" href="/linux-tutorial/assets/js/61.ee233f24.js"><link rel="prefetch" href="/linux-tutorial/assets/js/62.6ba50cc7.js"><link rel="prefetch" href="/linux-tutorial/assets/js/63.9cbf9f2b.js"><link rel="prefetch" href="/linux-tutorial/assets/js/64.0be148a4.js"><link rel="prefetch" href="/linux-tutorial/assets/js/65.c520257e.js"><link rel="prefetch" href="/linux-tutorial/assets/js/66.f2335390.js"><link rel="prefetch" href="/linux-tutorial/assets/js/67.e5737218.js"><link rel="prefetch" href="/linux-tutorial/assets/js/68.46427a01.js"><link rel="prefetch" href="/linux-tutorial/assets/js/69.450417bb.js"><link rel="prefetch" href="/linux-tutorial/assets/js/7.046e5a1b.js"><link rel="prefetch" href="/linux-tutorial/assets/js/70.072034d2.js"><link rel="prefetch" href="/linux-tutorial/assets/js/8.77fb8967.js"><link rel="prefetch" href="/linux-tutorial/assets/js/9.ebfa537e.js"><link rel="prefetch" href="/linux-tutorial/assets/js/vendors~flowchart.20a64d45.js"><link rel="prefetch" href="/linux-tutorial/assets/js/vendors~notification.ea176280.js">
|
||
<link rel="stylesheet" href="/linux-tutorial/assets/css/0.styles.45d9d031.css">
|
||
</head>
|
||
<body>
|
||
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/linux-tutorial/" class="home-link router-link-active"><img src="images/dunwu-logo-100.png" alt="LINUX-TUTORIAL" class="logo"> <span class="site-name can-hide">LINUX-TUTORIAL</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/linux-tutorial/linux/cli/" class="nav-link">
|
||
Linux 命令
|
||
</a></div><div class="nav-item"><a href="/linux-tutorial/linux/ops/" class="nav-link router-link-active">
|
||
Linux 运维
|
||
</a></div><div class="nav-item"><a href="/linux-tutorial/linux/soft/" class="nav-link">
|
||
Linux 软件运维
|
||
</a></div><div class="nav-item"><a href="/linux-tutorial/docker/" class="nav-link">
|
||
Docker 教程
|
||
</a></div><div class="nav-item"><a href="https://github.com/dunwu/blog" target="_blank" rel="noopener noreferrer" class="nav-link external">
|
||
🎯 博客
|
||
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div> <a href="https://github.com/dunwu/linux-tutorial" target="_blank" rel="noopener noreferrer" class="repo-link">
|
||
Github
|
||
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/linux-tutorial/linux/cli/" class="nav-link">
|
||
Linux 命令
|
||
</a></div><div class="nav-item"><a href="/linux-tutorial/linux/ops/" class="nav-link router-link-active">
|
||
Linux 运维
|
||
</a></div><div class="nav-item"><a href="/linux-tutorial/linux/soft/" class="nav-link">
|
||
Linux 软件运维
|
||
</a></div><div class="nav-item"><a href="/linux-tutorial/docker/" class="nav-link">
|
||
Docker 教程
|
||
</a></div><div class="nav-item"><a href="https://github.com/dunwu/blog" target="_blank" rel="noopener noreferrer" class="nav-link external">
|
||
🎯 博客
|
||
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div> <a href="https://github.com/dunwu/linux-tutorial" target="_blank" rel="noopener noreferrer" class="repo-link">
|
||
Github
|
||
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>oh-my-zsh 应用</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/linux-tutorial/linux/ops/zsh.html#_1-zsh-简介" class="sidebar-link">1. Zsh 简介</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/linux-tutorial/linux/ops/zsh.html#_1-1-zsh-是什么" class="sidebar-link">1.1. Zsh 是什么</a></li></ul></li><li><a href="/linux-tutorial/linux/ops/zsh.html#_2-zsh-安装" class="sidebar-link">2. Zsh 安装</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/linux-tutorial/linux/ops/zsh.html#_2-1-环境要求" class="sidebar-link">2.1. 环境要求</a></li><li class="sidebar-sub-header"><a href="/linux-tutorial/linux/ops/zsh.html#_2-2-安装-zsh" class="sidebar-link">2.2. 安装 zsh</a></li><li class="sidebar-sub-header"><a href="/linux-tutorial/linux/ops/zsh.html#_2-3-安装-oh-my-zsh" class="sidebar-link">2.3. 安装 oh-my-zsh</a></li><li class="sidebar-sub-header"><a href="/linux-tutorial/linux/ops/zsh.html#_2-4-配置-oh-my-zsh" class="sidebar-link">2.4. 配置 oh-my-zsh</a></li></ul></li><li><a href="/linux-tutorial/linux/ops/zsh.html#_3-快捷键" class="sidebar-link">3. 快捷键</a><ul class="sidebar-sub-headers"></ul></li><li><a href="/linux-tutorial/linux/ops/zsh.html#_4-参考资料" class="sidebar-link">4. 参考资料</a><ul class="sidebar-sub-headers"></ul></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="oh-my-zsh-应用"><a href="#oh-my-zsh-应用" class="header-anchor">#</a> oh-my-zsh 应用</h1> <h2 id="_1-zsh-简介"><a href="#_1-zsh-简介" class="header-anchor">#</a> 1. Zsh 简介</h2> <h3 id="_1-1-zsh-是什么"><a href="#_1-1-zsh-是什么" class="header-anchor">#</a> 1.1. Zsh 是什么</h3> <p>使用 Linux 的人都知道:*<strong>Shell_ 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。<em>Shell</em> 既是一种命令语言,又是一种程序设计语言</strong>。</p> <p>Shell 的类型有很多种,linux 下默认的是 bash,虽然 bash 的功能已经很强大,但对于以懒惰为美德的程序员来说,bash 的提示功能不够强大,界面也不够炫,并非理想工具。</p> <p><a href="http://www.zsh.org/" target="_blank" rel="noopener noreferrer"><strong>Zsh</strong><span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> 也是一种 Shell(据传说 99% 的 Bash 操作 和 Zsh 是相同的),它的功能极其强大,只是配置过于复杂,起初只有极客才在用。后来,出现了一个名叫 <a href="https://github.com/robbyrussell/oh-my-zsh" target="_blank" rel="noopener noreferrer"><strong>oh-my-zsh</strong><span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> 的开源项目,使用 zsh 就变得十分简易了。</p> <h2 id="_2-zsh-安装"><a href="#_2-zsh-安装" class="header-anchor">#</a> 2. Zsh 安装</h2> <h3 id="_2-1-环境要求"><a href="#_2-1-环境要求" class="header-anchor">#</a> 2.1. 环境要求</h3> <ul><li>CentOS 6.7 64 bit</li> <li>root 用户</li></ul> <h3 id="_2-2-安装-zsh"><a href="#_2-2-安装-zsh" class="header-anchor">#</a> 2.2. 安装 zsh</h3> <ul><li>先看下你的 CentOS 支持哪些 shell:<code>cat /etc/shells</code>,正常结果应该是这样的:</li></ul> <div class="language-bash extra-class"><pre class="language-bash"><code>/bin/sh
|
||
/bin/bash
|
||
/sbin/nologin
|
||
/bin/dash
|
||
/bin/tcsh
|
||
/bin/csh
|
||
</code></pre></div><p>如果已经有 zsh ,那么我们就不必安装了。</p> <ul><li>CentOS 安装:<code>sudo yum install -y zsh</code></li> <li>Ubuntu 安装:<code>sudo apt-get install -y zsh</code></li> <li>检查系统的 shell:<code>cat /etc/shells</code>,你会发现多了一个:<code>/bin/zsh</code></li></ul> <h3 id="_2-3-安装-oh-my-zsh"><a href="#_2-3-安装-oh-my-zsh" class="header-anchor">#</a> 2.3. 安装 oh-my-zsh</h3> <p>使用 <a href="http://www.zsh.org/" target="_blank" rel="noopener noreferrer"><strong>Zsh</strong><span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>,怎么能离开灵魂伴侣 <a href="https://github.com/robbyrussell/oh-my-zsh" target="_blank" rel="noopener noreferrer"><strong>oh-my-zsh</strong><span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>?</p> <div class="language-bash extra-class"><pre class="language-bash"><code><span class="token comment"># 安装 oh-my-zsh</span>
|
||
<span class="token function">wget</span> https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - <span class="token operator">|</span> <span class="token function">sh</span>
|
||
</code></pre></div><h3 id="_2-4-配置-oh-my-zsh"><a href="#_2-4-配置-oh-my-zsh" class="header-anchor">#</a> 2.4. 配置 oh-my-zsh</h3> <h4 id="_2-4-1-插件"><a href="#_2-4-1-插件" class="header-anchor">#</a> 2.4.1. 插件</h4> <blockquote><p>oh-my-zsh 插件太多,不一一列举,请参考:<a href="https://github.com/robbyrussell/oh-my-zsh/wiki/Plugins" target="_blank" rel="noopener noreferrer">oh-my-zsh 插件列表<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></p></blockquote> <ul><li>启用 oh-my-zsh 中自带的插件。</li> <li>查看 oh-my-zsh 插件数:<code>ls -l /root/.oh-my-zsh/plugins |grep "^d"|wc -l</code></li> <li>编辑配置文件:<code>vim /root/.zshrc</code></li> <li>插件推荐:
|
||
<ul><li><a href="https://github.com/zsh-users/zsh-autosuggestions" target="_blank" rel="noopener noreferrer"><code>zsh-autosuggestions</code><span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> <ul><li>这个插件会对历史命令一些补全,类似 fish 终端</li> <li>安装,复制该命令:<code>git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-\~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions</code> - 编辑:<code>vim \~/.zshrc</code>,找到这一行,后括号里面的后面添加:<code>plugins=( 前面的一些插件名称,换行,加上:zsh-autosuggestions)</code> - 刷新下配置:<code>source \~/.zshrc</code></li></ul></li> <li>extract
|
||
<ul><li>功能强大的解压插件,所有类型的文件解压一个命令 x 全搞定,再也不需要去记 tar 后面到底是哪几个参数了。</li></ul></li> <li>z
|
||
<ul><li>强大的目录自动跳转命令,会记忆你曾经进入过的目录,用模糊匹配快速进入你想要的目录。</li></ul></li> <li><a href="https://github.com/zsh-users/zsh-syntax-highlighting" target="_blank" rel="noopener noreferrer"><code>zsh-syntax-highlighting</code><span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> <ul><li>这个插件会对终端命令高亮显示,比如正确的拼写会是绿色标识,否则是红色,另外对于一些 shell 输出语句也会有高亮显示,算是不错的辅助插件</li> <li>安装,复制该命令:<code>git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-\~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting</code></li> <li>编辑:<code>vim \~/.zshrc</code>,找到这一行,后括号里面的后面添加:<code>plugins=( 前面的一些插件名称,换行,加上:zsh-syntax-highlighting)</code> - 刷新下配置:<code>source \~/.zshrc</code></li></ul></li> <li><a href="https://github.com/mfaerevaag/wd" target="_blank" rel="noopener noreferrer"><code>wd</code><span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> <ul><li>简单地讲就是给指定目录映射一个全局的名字,以后方便直接跳转到这个目录,比如:</li> <li>编辑配置文件,添加上 wd 的名字:<code>vim /root/.zshrc</code></li> <li>我常去目录:<strong>/opt/setups</strong>,每次进入该目录下都需要这样:<code>cd /opt/setups</code></li> <li>现在用 wd 给他映射一个快捷方式:<code>cd /opt/setups ; wd add setups</code></li> <li>以后我在任何目录下只要运行:<code>wd setups</code> 就自动跑到 /opt/setups 目录下了</li></ul></li> <li><a href="https://github.com/wting/autojump" target="_blank" rel="noopener noreferrer"><code>autojump</code><span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> <ul><li>这个插件会记录你常去的那些目录,然后做一下权重记录,你可以用这个命令看到你的习惯:<code>j --stat</code>,如果这个里面有你的记录,那你就只要敲最后一个文件夹名字即可进入,比如我个人习惯的 program:<code>j program</code>,就可以直接到:<code>/usr/program</code></li> <li>插件下载:<code>wget https://github.com/downloads/wting/autojump/autojump_v21.1.2.tar.gz</code></li> <li>解压:<code>tar zxvf autojump_v21.1.2.tar.gz</code></li> <li>进入解压后目录并安装:<code>cd autojump_v21.1.2/ ; ./install.sh</code></li> <li>再执行下这个:<code>source /etc/profile.d/autojump.sh</code></li> <li>编辑配置文件,添加上 autojump 的名字:<code>vim /root/.zshrc</code></li></ul></li></ul></li></ul> <h4 id="_2-4-2-主题"><a href="#_2-4-2-主题" class="header-anchor">#</a> 2.4.2. 主题</h4> <blockquote><p>oh-my-zsh 主题太多,不一一列举,请参考:<a href="https://github.com/robbyrussell/oh-my-zsh/wiki/Themes" target="_blank" rel="noopener noreferrer">oh-my-zsh 主题列表<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></p></blockquote> <ul><li>查看 oh-my-zsh 主题数:<code>ls -l /root/.oh-my-zsh/themes |grep "^-"|wc -l</code></li> <li>个人比较推荐的是(排名有先后):
|
||
<ul><li><code>ys</code></li> <li><code>agnoster</code></li> <li><code>avit</code></li> <li><code>blinks</code></li></ul></li> <li>编辑配置文件:<code>vim /root/.zshrc</code></li> <li>配置好新主题需要重新连接 shell 才能看到效果</li></ul> <p>zsh 效果如下:</p> <p><img src="https://cloud.githubusercontent.com/assets/2618447/6316862/70f58fb6-ba03-11e4-82c9-c083bf9a6574.png" alt="img"></p> <h2 id="_3-快捷键"><a href="#_3-快捷键" class="header-anchor">#</a> 3. 快捷键</h2> <ul><li>呃,这个其实可以不用讲的,你自己用的时候你自己会发现的,各种便捷,特别是用 Tab 多的人一定会有各种惊喜的。</li> <li>使用 ctrl-r 来搜索命令历史记录。按完此快捷键后,可以输入关键命令词语,如果历史记录有含有此词语会显示出来。</li> <li>命令别名: - 在命令行中输入 alias 可以查看已经有的命令别名 - 自己新增一些别名,编辑文件:<code>vim \~/.zshrc</code>,在文件加入下面格式的命令,比如以下是网友提供的一些思路:</li></ul> <div class="language-shell extra-class"><pre class="language-shell"><code><span class="token builtin class-name">alias</span> <span class="token assign-left variable">cls</span><span class="token operator">=</span><span class="token string">'clear'</span>
|
||
<span class="token builtin class-name">alias</span> <span class="token assign-left variable">ll</span><span class="token operator">=</span><span class="token string">'ls -l'</span>
|
||
<span class="token builtin class-name">alias</span> <span class="token assign-left variable">la</span><span class="token operator">=</span><span class="token string">'ls -a'</span>
|
||
<span class="token builtin class-name">alias</span> <span class="token assign-left variable">grep</span><span class="token operator">=</span><span class="token string">"grep --color=auto"</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">html</span><span class="token operator">=</span><span class="token string">'vim'</span> <span class="token comment"># 在命令行直接输入后缀为 html 的文件名,会在 Vim 中打开</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">rb</span><span class="token operator">=</span><span class="token string">'vim'</span> <span class="token comment"># 在命令行直接输入 ruby 文件,会在 Vim 中打开</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">py</span><span class="token operator">=</span><span class="token string">'vim'</span> <span class="token comment"># 在命令行直接输入 python 文件,会用 vim 中打开,以下类似</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">js</span><span class="token operator">=</span><span class="token string">'vim'</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">c</span><span class="token operator">=</span><span class="token string">'vim'</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">java</span><span class="token operator">=</span><span class="token string">'vim'</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">txt</span><span class="token operator">=</span><span class="token string">'vim'</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">gz</span><span class="token operator">=</span><span class="token string">'tar -xzvf'</span> <span class="token comment"># 在命令行直接输入后缀为 gz 的文件名,会自动解压打开</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">tgz</span><span class="token operator">=</span><span class="token string">'tar -xzvf'</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">zip</span><span class="token operator">=</span><span class="token string">'unzip'</span>
|
||
<span class="token builtin class-name">alias</span> -s <span class="token assign-left variable">bz2</span><span class="token operator">=</span><span class="token string">'tar -xjvf'</span>
|
||
</code></pre></div><h2 id="_4-参考资料"><a href="#_4-参考资料" class="header-anchor">#</a> 4. 参考资料</h2> <ul><li><a href="https://github.com/robbyrussell/oh-my-zsh" target="_blank" rel="noopener noreferrer">oh-my-zsh Github<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li></ul></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/dunwu/linux-tutorial/edit/master/docs/linux/ops/zsh.md" target="_blank" rel="noopener noreferrer">帮助我们改善此页面!</a> <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></div> <div class="last-updated"><span class="prefix">上次更新:</span> <span class="time">a year ago</span></div></footer> <!----> </main></div><div class="global-ui"><!----><!----></div></div>
|
||
<script src="/linux-tutorial/assets/js/app.79a38eea.js" defer></script><script src="/linux-tutorial/assets/js/4.fb6e0f89.js" defer></script><script src="/linux-tutorial/assets/js/47.cc639f04.js" defer></script><script src="/linux-tutorial/assets/js/5.cb43ecfb.js" defer></script>
|
||
</body>
|
||
</html>
|