我已经用了十年的Linux了,通过这篇文章我将向大家展示一系列的命令、工具和技巧,我希望一开始有人告诉我这些,而不是曾在我成长道路上绊住我。
  1. 命令行日常系快捷键
  如下的快捷方式非常有用,能够极大的提升你的工作效率:
  CTRL + U – 剪切光标前的内容
  CTRL + K – 剪切光标至行末的内容
  CTRL + Y – 粘贴
  CTRL + E – 移动光标到行末
  CTRL + A – 移动光标到行首
  ALT + F – 跳向下一个空格
  ALT + B – 跳回上一个空格
  ALT + Backspace – 删除前一个单词
  CTRL + W – 剪切光标前一个单词
  Shift + Insert – 向终端内粘贴文本
  那么为了让上述内容更易理解来看下面的这行命令。
  sudo apt-get intall programname
  如你所见,命令中存在拼写错误,为了正常执行需要把“intall”替换成“install”。
  想象现在光标正在行末,我们有很多的方法将她退回单词install并替换它。
  我可以按两次ALT+B这样光标会在如下的位置(这里用指代光标的位置)。
  sudo apt-get^intall programname
  现在你可以按两下方向键并将“s”插入到install中去了。
  如果你想将浏览器中的文本复制到终端,可以使用快捷键”shift + insert”。
  2. SUDO !!
  如果你还不知道这个命令,我觉得你应该好好感谢我,因为如果你不知道的话,那每次你在输入长串命令后看到“permission denied”后一定会痛苦不堪。
  sudo !!
  如何使用sudo !!?很简单。试想你刚输入了如下命令:
  apt-get install ranger
  一定会出现“Permission denied”,除非你已经登录了足够高权限的账户。
  sudo !! 会用 sudo 的形式运行上一条命令。所以上一条命令变成了这样:
  sudo apt-get install ranger
  如果你不知道什么是sudo,戳这里。
  3. 暂停并在后台运行命令
  我曾经写过一篇如何在终端后台运行命令的指南。
  CTRL + Z – 暂停应用程序
  fg – 重新将程序唤到前台
  如何使用这个技巧呢?
  试想你正用nano编辑一个文件:
  sudo nano abc.txt
  文件编辑到一半你意识到你需要马上在终端输入些命令,但是nano在前台运行让你不能输入。
  你可能觉得的方法是保存文件,退出 nano,运行命令以后在重新打开nano。
  其实你只要按CTRL + Z,前台的命令会暂停,画面切回到命令行了。然后你能运行你想要运行命令,等命令运行完后在终端窗口输入“fg”可以回到先前暂停的任务。
  有一个尝试非常有趣是用nano打开文件,输入一些东西然后暂停会话。再用nano打开另一个文件,输入一些什么后再暂停会话。如果你输入“fg”你将回到第二个用nano打开的文件。只有退出nano再输入“fg”,你才会回到第一个用nano打开的文件。
  4. 使用nohup在登出SSH会话后仍运行命令
  如果你用ssh登录别的机器时,nohup命令真的非常有用。
  那么怎么使用nohup呢?
  想象一下你使用ssh远程登录到另一台电脑上,你运行了一条非常耗时的命令然后退出了ssh会话,不过命令仍在执行。而nohup可以将这一场景变成现实。
  举个例子,因为测试的需要,我用我的树莓派来下载发行版。我不会给我的树莓派外接显示器、键盘或鼠标。
  一般我总是用SSH从笔记本电脑连接到树莓派。如果我在不用nohup的情况下使用树莓派下载大型文件,那我必须等待到下载完成后,才能登出ssh会话关掉笔记本。可如果是这样,那我为什么要使用树莓派下文件呢?
  使用nohup的方法也很简单,只需如下例中在nohup后输入要执行的命令即可:
  nohup wget http://mirror.is.co.za/mirrors/linuxmint.com/iso//stable/17.1/linuxmint-17.1-cinnamon-64bit.iso &
  5. ‘在’特定的时间运行Linux命令
  ‘nohup’命令在你用SSH连接到服务器,并在上面保持执行SSH登出前任务的时候十分有用。
  想一下如果你需要在特定的时间执行相同的命令,这种情况该怎么办呢?
  命令‘at’能妥善解决这一情况。以下是‘at’使用示例。
  at 10:38 PM Fri
  at> cowsay 'hello'
  at> CTRL + D
  上面的命令能在周五下午10时38分运行程序cowsay。
  使用的语法是‘at’后追加日期时间。当at>提示符出现后可以输入你想在那个时间运行的命令了。
  CTRL + D 返回终端。
  还有许多日期和时间的格式,都需要你好好翻一翻‘at’的man手册来找到更多的使用方式。
  6. Man手册
  Man手册会为你列出命令和参数的使用大纲,教你如何使用她们。Man手册看起来沉闷呆板。(我思忖她们也不是被设计来娱乐我们的)。
  不过这不代表你不能做些什么来使她们变得漂亮些。
  export PAGER=most
  你需要安装 ‘most’;她会使你的你的man手册的色彩更加绚丽。
  你可以用以下命令给man手册设定指定的行长:
  export MANWIDTH=80
  后,如果你有一个可用的浏览器,你可以使用-H在默认浏览器中打开任意的man页。
  man -H <command>
  注意啦,以上的命令只有在你将默认的浏览器设置到环境变量$BROWSER中了之后才效果哟。
  7. 使用htop查看和管理进程
  你用哪个命令找出电脑上正在运行的进程的呢?我敢打赌是‘ps’并在其后加不同的参数来得到你所想要的不同输出。
  安装‘htop’吧!让你相见恨晚。
  htop在终端中将进程以列表的方式呈现,有点类似于Windows中的任务管理器。你可以使用功能键的组合来切换排列的方式和展示出来的项。你也可以在htop中直接杀死进程。
  在终端中简单的输入htop即可运行。
  htop