你有没有惊讶地看到有人在Unix/ Linux中工作得非常快,噼里啪啦的敲键盘,快速的启动命令,飞快地执行命令?

在本文中,我共享了一些在Linux中快速、高效工作所遵循的Unix/ Linux命令实践。

我们所有的服务都在Linux服务器上运行,因此在Linux终端中高效、快速地工作对我们非常重要,这就是我在Linux中学习到的这些生产力技巧。

如果您的服务器也驻留在Linux机器上,并且您的一天两天的工作涉及大量的搜索和围绕UNIX命令进行的操作,那么这些技巧将为您节省大量的时间。

使用"!"用于执行最后一个命令

这平均节省了我30%的时间。通常情况下,您在几秒钟内多次触发同一个Unix命令,在知道这个技巧之前,我用上下箭头找到我的命令,然后执行它们,这需要花费我很多时间。但是,在知道这个技巧之后,我只需要记住命令名,例如 !ls 将执行最后一个“ls-lrt”,!vim将在不输入完整命令的情况下打开您的最后一个文件。使用这个技巧肯定会节省大量的时间,而且它在shell上也很有用,而不只是bash shell(如csh或ksh),其中上下箭头通常不给您以前的命令。

例如,在执行ls-l stocks.txt之后,如果要打开stocks.txt,可以使用VIM编辑器作为vi!$(最后一个参数)。

使用“!!”用于执行最后一个命令

这是前一个技巧的扩展,用于执行您执行的最后一个命令。因为它只需要两次击键,而且对于同一个键来说也需要两次击键,所以速度非常快。

这也适用于上下箭头与k shell和c shell不同的shell。这是非常有用的,非常适用于您正在停止或启动服务器或Java应用程序调试频繁的场景。

使用“ctrl+r”重复上次匹配的命令

如果您还记得好早之前执行的命令,并且只想找到具有相同参数的命令并执行,那么“ctrl+r”将是非常有效的命令。它可以匹配命令中的任何位置的字符,并将最近的一个命令显示出来。

只需按“crtl+r”并键入上一个命令中的单词,Unix将为您找到该命令,然后按Enter。

如果您经常执行命令,并且重复的百分比很高,上述三个技巧都可以节省大量的时间。

使用history命令获取一些最常用的unix命令

嗯,这是我开始使用Unix时学到的第一个技巧。这是UNIX和shell脚本编写中最有用的命令。

在大多数情况下,有一个特定的命令,比如启动、停止、检查日志文件、生成或执行发布等。

这些是您经常需要执行的命令,如果您不记得确切的命令,则无需担心,只需执行history grep“keyword”,就可以从Linux机器的历史记录中获得该命令。

有一些特定的环境变量设置最多存储多少命令的unix历史记录,建议将其设置的尽量大一些,这样你就可以很容易的找到之前的执行的命令,避免频繁上网查找这些命令怎么用。

在grep和find中使用正则表达式

grep和find是Unix提供给我们的两个最好的工具。几乎每个人都需要在Unix中搜索一些东西,例如文件、目录、文件中的某些词(例如错误或异常),如果您知道如何使用grep并使用正则表达式查找,则通过键入较少的命令可以节省大量时间。

例如,通过了解egrep,您可以启动egrep“error exception”*.xml,而不是分别启动两个grep命令来查找错误和异常。

使用管道而不是发射两个命令

如上图所示,我想大家都知道这个好小贴士。

如果你不知道,最好从一个不错的 Linux课程开始,比如 Linux命令行基础知识,因为你可能也不知道其他一些基础知识。

从我个人的经验来看,参加一个好的课程比零碎地找到基本信息要好。

而且,如果您不介意从免费资源中学习,您还可以查看我为开发人员提供的5门免费 Linux课程的列表。

使用别名并在bash概要文件或bashrc文件中定义它们

你有没有看到一些奇怪的命令在某人的机器上运行,而不是在你的机器上运行,这可能是他在.bashrc或.profile文件中设置的别名?

总是对常用命令进行这种设置。.bashrc和.profile文件有很多用法,但最重要的用法之一是设置别名,例如“l”,它可以找到所有隐藏的文件。“ls”包括所有有用选项,如-lrth,以显示所有相关信息。

使用pushd、popd、cd-、~在目录中移动

根据我的经验,在Unix shell中导航(切换文件目录)几乎消耗掉我们50%的时间。如果您要不时地编写目录路径,那么就忘记快速工作。

因此,不要键入全名,而是使用上述所有提示,并充分利用pushd、popd、cd-和cd~命令。如果在UNIX中在两个目录位置之间切换,cd-是最好的选择。

减少击键次数或提高打字速度

你打字越少,工作就越快。

要使用上一个键入的命令,请使用bash中的tab,以便让unix bash shell完成命令。

如果键入的最后一个命令很长,并且只想更改几行,请使用ctrl+r。

持续学习新的Linux命令

尝试学习更多的命令及其选项,并使用它将减少思考特定任务的时间,并使用ctrl+z、fg和bg挂起进程。

如果您查看多个文件或日志文件,那么可以节省近10%的时间,因此,而不是每隔一段时间,然后执行VIM命令,只需按ctrl+z将其挂起,然后按fg 1或fg 2将其置于前台。

希望这些关于unix命令的示例和提示能够帮助您在使用unix时在更短的时间内完成更多的工作,并提高您的工作效率和经验。

10个在UNIX或Linux终端上快速工作的建议的更多相关文章

  1. Linux 终端最全推荐(建议收藏)

    本文来自网络整理,如有侵权,则可删除. 如果你跟我一样,整天要花大量的时间使用Linux命令行,而且正在寻找一些可替代系统自带的老旧且乏味的终端软件,那你真是找对了文章.我这里搜集了一些非常有趣的终端 ...

  2. 在Linux终端中快速生成、解码二维码

    我们要实现两个功能: 解码Linux屏幕上的二维码,将结果输出在终端 在终端中将字符串转为二维码,直接显示二维码在终端中以供扫描 实现方法 生成二维码 qrencode是一个常见的生成二维码的CLI程 ...

  3. Linux 服务器上快速配置阿里巴巴 OPSX NTP服务

    编辑文件 "/etc/ntp.conf",根据情况修改文件内容为: 互联网上的服务器: driftfile /var/lib/ntp/drift pidfile /var/run/ ...

  4. Unix、Linux 软件包管理快速入门对照:apt、brew、pkg、yum

    请访问原文链接:https://sysin.org/blog/apt-brew-pkg-yum/,查看最新版.原创作品,转载请保留出处. 作者:gc(at)sysin.org,主页:www.sysin ...

  5. 在 Linux 系统上快速获取命令的帮助信息

    几种方法: help 命令 man 命令 info 命令 命令 --help man 章节分类如下 1 - commands 2 - system calls 3 - library calls 4 ...

  6. 10 个提升效率的Linux小技巧

    您是否曾经惊讶于看到某人在 UNIX 中非常快速地工作,触发命令并快速地执行操作?是的,我碰到过几次,并且我一直都在向那些超级巨星开发者学习.在本文中,我想分享一些 UNIX 命令实践,这些实践是我在 ...

  7. Linux之HugePages快速配置

    关于Linux系统的HugePages与Oracle数据库优化,可以参考熊爷之前的文章,相关概念介绍的非常清晰: Linux大内存页Oracle数据库优化 本文旨在Linux系统上快速配置HugePa ...

  8. Linux 终端访问 FTP 及 上传下载 文件

    今天同事问我一个问题,在Linux 下访问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上.google 一下. 方 ...

  9. Linux 终端訪问 FTP 及 上传下载 文件

    今天同事问我一个问题,在Linux 下訪问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上. google 一下. ...

随机推荐

  1. spring boot 集成 shiro

    写在前面 1.Shiro是Apache下的一个开源项目,我们称之为Apache Shiro.它是一个很易用与Java项目的的安全框架,提供了认证.授权.加密.会话管理,与spring Security ...

  2. native与ascii互转

    package org.edujks.schoolapp.schoolbasedresearch.schoolsubject.action; public class DecodeUtil { /** ...

  3. Java 线程第三版 第四章 Thread Notification 读书笔记

    一.等待与通知 public final void wait() throws InterruptedException      等待条件的发生. public final void wait(lo ...

  4. 在ASP.NET Web API中使用OData的单例模式

    从OData v4开始增加了对单例模式的支持,我们不用每次根据主键等来获取某个EDM,就像在C#中使用单例模式一样.实现方式大致需要两步: 1.在需要实现单例模式的导航属性上加上[Singleton] ...

  5. lufylegend:Lbuttion等UI组件

    1,矩形按钮LButtonSample1 首先来看看LButtonSample1按钮的绘制. 在lufylegend.js引擎中可以利用LButton类来添加一个按钮,但是你需要传入按钮弹起和按钮按下 ...

  6. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(6) Locale

    本章介绍Locale. 1 Locale 介绍 Locale 表示地区.每一个Locale对象都代表了一个特定的地理.政治和文化地区. 在操作 Date, Calendar等表示日期/时间的对象时,经 ...

  7. C#编程(六十六)----------表达式树总结

    表达式树总结 基础 表达式树提供了一个将可执行代码转换成数据的方法.如果你要在执行代码之前修改或转换此代码,那么它是很有用的.有其是当你要将C#代码----如LINQ查询表达式转换成其他代码在另一个程 ...

  8. springboot实现服务器端消息推送(websocket + sockjs + stomp)

    服务器端推送技术在web开发中比较常用,可能早期很多人的解决方案是采用ajax向服务器轮询消息,这种方式的轮询频率不好控制,所以大大增加了服务器的压力,后来有了下面的方案:当客户端向服务器发送请求时, ...

  9. Ubuntu 14.04 用户如何安装 VLC 2.2.0

    http://www.linuxidc.com/Linux/2014-03/98913.htm http://www.videolan.org/vlc/#download VLC 是一款自由开源.跨平 ...

  10. 架构:The Onion Architecture : part 2(洋葱架构:第二篇)(转载)

    原位地址:http://jeffreypalermo.com/blog/the-onion-architecture-part-2/. In part 1, I introduced an archi ...