提高UNIX/Linux工作效率的十个技巧你准备了十个加快UNIX/Linux打字速度和提高工作效率的技巧。您是否曾经对有人在UNIX上快速浏览指令感到敬畏?至少我遇到过几次,我将它们视为我提高UNIX技能的目标。在这篇文章中,我将与大家分享一些我在Linux系统中实现快速高效工作的常用UNIX命令操作实例,希望对大家有所帮助。我在金融服务行业工作,工作主要涉及电子交易和衍生品系统上的在线股票和期货业务的开发和支持。由于我们所有的服务都运行在Linux服务器上,所以能够在Linux上流畅熟练地工作对我来说非常重要。与本文属于同系列的文章有:《UNIX的10大基本网络命令》,没看过有兴趣的可以找找看,以供参考。1.使用!执行最后一条命令这种用法平均为我节省了30%的时间。通常,您可能会遇到需要在短时间内多次输入相同的UNIX命令的情况。以前,我常用的技巧是:使用键盘上的上下箭头键找到我最近使用的命令,选择它并回车执行。这显然需要时间让我一一检索。但是,现在我知道我可以使用!诡计。而我只需要记住我输入的命令的名称。例如:如果我输入“!ls”,系统就会执行我上次输入的“ls-lrt”。如果我输入“!vim”,我可以打开我上次编辑的文件,而不用输入它的完整命令。通过使用这种技术,您不仅可以节省拼写复杂命令所花费的打字时间,而且可以在某些无法使用向上和向下箭头调出过去命令的bashshell(例如csh或ksh)中使用它。例如:如果想在执行“ls-lstocks.txt”后直接打开stocks.txt文件,可以直接使用“vi!$(***aparameter)”。2.使用!tocalllastcommand这个技巧是对前面的!的扩展,可以帮助你引用和调用之前执行的最后一条命令。只需双击!,您可以获得惊人的快捷方式体验。例如:我执行了ifconfig|之前是grep"inetaddr:",现在权限不足,需要root用户权限,那直接输入su-c"!!"就可以了根。这里su用来选择用户,-c用来表示具体要执行的命令,还有“!!”替换我上次运行的命令。这个技巧对于不能使用向上和向下箭头的csh或ksh也特别有效。如果您经常停止/启动服务器,或使用Java调试应用程序,请熟悉此技术。顺便说一下,如果你不熟悉bashshell和shell脚本,我建议你看看:《bash shell脚本的初学者速成课程》。对于Linux初学者来说非常实用。3、使用CTRL+R匹配稍旧的命令在Linux系统中,如果要查找最近几次没有输入过但比较旧的命令,那么只使用上下箭头显然效率更高键盘上的个子不高。此时,我们可以利用这个技巧,用相同的参数进行反向搜索查找。例如:你只需要按“CRTL+R”,然后输入你在上一条命令中出现过的关键字,UNIX就可以帮你找到这条命令。确认后直接按回车键即可。当然你也可以继续按上下键查找命令前后的命令,用左右键移动光标修改这条命令。就我而言,由于以上三种技巧的使用频率都比较高,它们基本上可以为我节省50%-60%的时间。4.使用History命令获取最常用的UNIX命令。这个命令其实是我初学UNIX时的入门级技能,想必是UNIX和Shell脚本中对你最有用的命令。在大多数情况下,您会经常在Linux系统中执行特定命令,例如启动、停止、检查日志文件、编译或执行发布。由于不同的应用程序使用略有不同的拼写方法,如果您不记得确切的命令语法,请不要担心,只需输入:history|grep“关键字”,可以从Linux系统的历史记录中找到对应的命令。当然,系统有一些特定的环境变量,比如HISTSIZE定义了UNIX历史可以存储的命令数。因此,虽然它可以帮助您节省时间,但也可以避免您频繁翻阅手册。顺便说一句,如果你对Linux的基本命令不熟悉,那我强烈建议你使用《linux 命令行基础知识》来弥补你的不足,以免手头紧的时候不得不上网搜索相关的Linux命令.5、在grep中使用正则表达式进行搜索grep和find是UNIX为我们提供的两个优秀的工具。我们不可避免地需要搜索UNIX中的某些内容,例如文件、目录、文件中的某些单词(如ERROR或Exception)。所以如果你知道如何使用grep和find的正则表达式,你可以节省很多输入命令的时间。例如:如果您知道如何使用egrep,则可以通过键入egrep"ERROR|Exception"*.xml来替换两个单独的grep命令来搜索ERROR和Exception。关于grep和find命令的更多信息,可以参考《grep命令的十种示例》(http://javarevisited.blogspot.sg/2011/06/10-examples-of-grep-command-in-unix-and.html)和《Linux中find命令的十种示例》(http://javarevisited.blogspot.sg/2011/03/10-find-command-in-unix-examples-basic.html)。6、使用管道代替两次发送命令管道的用法在上面的例子中已经展示出来了,你注意到了吗?7.使用别名并在BashProfile或bashrc文件中定义它们你见过有人在他们的系统中使用一些奇怪的命令吗?也许他们正在使用在他们的.bashrc或.profile文件中预先配置的别名机制。他们将通过大量使用.bashrc和.profile文件中的简化别名命令来节省键入时间。例如:使用“l”查找所有隐藏文件。使用“ls”来包含所有有用的选项,例如-lrtH来显示所有相关信息。Linux登录机制和.login、.profile、.bashrc文件在Linuxbashshell中的作用可以参考《linux命令行界面(CLI)基础知识》。8、使用pushd、popd、cd-、~切换目录。不知道大家有没有这样的经历:由于任务的需要,我们需要在多个深层目录之间切换。虽然我们在输入cd命令的时候可以使用tab键,但是冗长的路径确实会耗费时间。所以根据我的经验,我们可以:用“cd–”回到上一级目录,在两个目录位置之间切换。使用“pushd”作为参数切换目录,将原目录和当前目录存放在一个虚拟栈中,实现目录的交换。使用“popd”弹出堆栈中的最新目录。9.减少击键次数或提高打字速度我们都知道,在键盘上打字的次数越少,您的工作效率就越高。所以,你可以充分利用bash中的tab键,让系统自动猜测,帮你完成后面的参数内容。当然,你也可以使用我们前面提到的CRTL+R来快速原型化前面输入的复杂命令。10、不断学习新的Linux命令学习使人精通。只有不断尝试新的命令和参数选项,才能缩短执行特定任务时的切换时间。此外,您还可以使用ctrl+z、fg和bg来暂停进程。其中:使用“ctrl+z”可以暂停一个正在前台执行的命令。使用“fg”将命令从后台转移到前台继续运行。使用“bg”恢复并继续执行在后台暂停的命令。当您需要同时查看多个文件或日志时,这些命令非常有用。如果你在服务器上安装了Linux操作系统,每天需要使用大量的UNIX命令,那么我们上面列出的十个技巧一定能帮助你加快UNIX/Linux的输入速度,提高工作效率。当然,如果你想分享你的Linux经验或shell实用程序,请记得给我留言。原标题:10TipsonFastWorkinginUNIXorLinux,作者:NiteshBehani
