Linux中让alias设置永久生效的方法详解
<p><span><strong>前言</strong></span></p>
<p>
经常使用linux控制台终端的站长们应该对于那些繁琐的指令和参数命令行印象深刻吧!这也是很多站长宁愿使用有安全风险的面板也不愿意使用控制台终端命令行的主要原因!好在,明月早年间的dos下学习编程的经历,对于这种命令行式的风格还是偏爱有加,但对于那些几乎经常要用到的命令行每次都要重复性的多次输入也还是烦不胜烦,记得在dos下有.bat这样的行式批处理文件可以将那些繁琐的命令行整合管理提高效率。</p>
<p>
linux下其实更加的方便,那就是 alias 别名命令了!</p>
<p>
例如:原本创建文件夹的命令为 mkdir,你可以使用<code> alias md=mkdir </code>命令将 mkdir 重命名为md ,使用 md 也可以便捷等价的创建文件夹。但alias命令默认仅针对当前终端有效,一旦开启新的终端窗口之前的alias别名便会实效。这就不实用,下面就来给大家详细介绍关于linux下如何让alias设置永久生效,下面话不多说了,来一起看看详细的介绍吧。</p>
<p>
<span><strong>方法如下:</strong></span></p>
<p>
<img title="Linux中让alias设置永久生效的方法详解" alt="Linux中让alias设置永久生效的方法详解" src="https://zhuji.jb51.net/uploads/img/202305/e83825ecc1b2b56278edfabdd4831ec8.jpg"></p>
<p>
这个 alias 命令就可以将一段冗长的命令行简化成几个字母或者数字的缩写,这样就不用每次都输入那么多的字母和符号了,并且缩写完全都是自己设定的,非常的个性化,如果自己整理一个简单的标准出来,可以非常好的提升控制台终端中的工作效率。</p>
<p>
比如,在lnmp里进入某个站点目录的命令完全就可以 alias 为站点缩写的,就不用再每次都要重复性的输入了,具体如下:</p>
<p>
进入站点目录命令</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_263577">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">cd</code> <code class="bash plain">/home/wwwroot/www</code><code class="bash plain">.mydomain.com/</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
通过 alias 别名简化命令</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_376748">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">alias</code> <code class="bash plain">mydomain=</code><code class="bash string">'cd /home/wwwroot/www.mydomain.com/'</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
这样下来以后再想进入站点目录的时候,只需要输入mydomain就可以了,等同于运行cd /home/wwwroot/www.mydomain.com/。</p>
<p>
再比如查看memcached进程id和运行与否命令</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_999669">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">ps</code> <code class="bash plain">-ef | </code><code class="bash functions">grep</code> <code class="bash plain">memecached</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
就可以 alias 别名简化为:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_168145">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">alias</code> <code class="bash plain">memv=</code><code class="bash string">'ps -ef | grep memecached'</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
这样只需要在命令行里输入memv就等同于运行了<code>ps -ef | grep memecached</code>。</p>
<p>
上述的别名设置虽然用起来很爽,但是都是“临时”的,也就是说只要你关闭了当前的ssh链接后,再次ssh登录到控制台终端的时候,这些别名设置就失效了,那么有没有让其永久生效的办法呢?在linux里没有不可能或者不科学的事儿的,答案是一定能的。通过 alias 命令设置的别名都是临时的,要想让其永久生效只需要将这些 alias 别名设置保存到文件:/root/.bashrc里面就可以了。</p>
<p>
先看看/root/.bashrc这个文件里有什么?</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_210366">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">cat</code> <code class="bash plain">/root/</code><code class="bash plain">.bashrc</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="Linux中让alias设置永久生效的方法详解" alt="Linux中让alias设置永久生效的方法详解" src="https://zhuji.jb51.net/uploads/img/202305/dabcfe6f5b47a10848f70a1e4946f2e6.jpg"></p>
<p>
通过上图大家可以看到里面已经有了一些 alias 的设置了,就是rm、cp、mv的,我们只需要编辑/root/.bashrc在里面添加上我们需要的别名设置保存退出即可。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_809297">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">source</code> <code class="bash plain">/root/</code><code class="bash plain">.bashrc</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
然后,使用source命令{注1}让这个初始化文件生效,这样以后再次通过ssh进入控制台别名设置就不会丢失了,也就实现了永久生效了。</p>
<p>
最后分享一张命令行别名设置供大家参考一下:</p>
<p>
<img title="Linux中让alias设置永久生效的方法详解" alt="Linux中让alias设置永久生效的方法详解" src="https://zhuji.jb51.net/uploads/img/202305/aed3089e29b70238732a39c9082cf43e.jpg"></p>
<p>
source命令也称为“点命令”,也就是一个点符号(.),是bash的内部命令。功能:使shell读入指定的shell程序文件并依次执行文件中的所有语句。source`命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。</p>
<p>
<span><strong>总结</strong></span></p>
<p>
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。</p>
<p>
原文链接:https://lnmp.ymanz.com/linux/180.html</p>
頁:
[1]