当前位置:首页 » 《休闲阅读》 » 正文

一些提高生产力的 Linux 命令和技巧_一个超会写Bug的程序猿的博客

24 人参与  2022年01月05日 15:24  分类 : 《休闲阅读》  评论

点击全文阅读


文章目录

  • 1、使用tab自动补全
  • 2、切换回上一个工作目录
  • 3、回到主目录
  • 4、列出目录的内容
  • 5、在一个命令中运行多个命令
  • 6、仅当上一个命令成功时,才在一个命令中运行多个命令
  • 7、轻松搜索和使用你过去使用过的命令
  • 8、移动到行首或行尾
  • 9、从光标位置删除整行
  • 10、从意外的 Ctrl+S 中解冻你的 Linux 终端
  • 11、实时读取日志文件
  • 12、无需解压即可读取压缩日志
  • 13、使用less读取文件
  • 14、 用!!在当前命令中的重用前一个命令
  • 15、使用别名(alias)修复拼写错误
  • 16、在Linux终端复制粘贴
  • 17、杀死正在运行的命令/进程
  • 18、对需要交互响应的命令或脚本使用 yes 命令
  • 19、清空文件而不删除它
  • 20、 查找是否有包含特定文本的文件
  • 21、对任何命令使用帮助

1、使用tab自动补全

在 Linux 终端中输入内容时,按 Tab 键,它会建议所有迄今为止输入的字符串开头的可能选项,在完成命令时也可以使用Tab 键显示选项卡。

在这里插入图片描述
在这里插入图片描述

2、切换回上一个工作目录

假设你进入一个很长的目录路径,之后你移动到另一个完全不同路径的目录。然后你意识到您必须返回到你所在的上一个目录。在这种情况下,你需要做的就是键入以下命令:

cd -

这将使你回到上一个工作目录。你不再需要键入长目录路径或复制粘贴它。

回到上一次的目录:
在这里插入图片描述

3、回到主目录

可以使用以下命令从 Linux 命令行的任何位置移动到主目录:

cd ~

在这里插入图片描述

也可以仅使用 cd 返回主目录:

cd

在这里插入图片描述

大多数现代 Linux 发行版都为此命令预先配置了 shell

4、列出目录的内容

大多数人使用 ls -l 来列出目录的内容,而使用以下命令也可以这样做:

ll

同样,这取决于 Linux 发行版和 shell 配置,但在大多数 Linux 发行版中都可以使用它。

在这里插入图片描述

5、在一个命令中运行多个命令

如何在 Linux 终端中一次运行多个 Linux 命令(初学者教程)

假设你必须一个接一个地运行多个 Linux 命令。你可以使用“;” 作为分隔符。这样,可以在一行中运行多个命令。无需等待前面的命令完成其业务。

command_1; command_2; command_3

6、仅当上一个命令成功时,才在一个命令中运行多个命令

在这种情况下,可以使用 && 分隔符。&& 确保下一个命令只会在上一个命令成功后运行。

command_1 && command_2

7、轻松搜索和使用你过去使用过的命令

如果你在几分钟或几小时前使用了一个长命令,当你需要再次使用它,但是你不再记得确切的命令时,就可以使用反向搜索。你可以使用搜索词在历史记录中搜索命令。

只需使用 ctrl+r 键启动反向搜索并键入命令的某些部分。它将查看历史记录并显示与搜索词匹配的命令。

ctrl+r search_term

默认情况下,它只会显示一个结果。要查看更多与你的搜索词匹配的结果,你必须一次又一次地使用 ctrl+r。要退出反向搜索,只需使用 Ctrl+C

在这里插入图片描述
请注意,在某些 Bash shell 中,还可以在搜索词中使用 Page UpDown 键,它会自动完成命令。

8、移动到行首或行尾

如果你正在键入一个很长的命令,并且在中途你意识到你必须在开始时更改某些内容。你可以使用几次向左箭头键移动到行的开头。当然,可以在此处使用 HomeEnd 键,但也可以使用 Ctrl+A 转到行首,使用 Ctrl+E 转到行尾。

在这里插入图片描述

9、从光标位置删除整行

在 Linux 终端中,如果按 Ctrl+U,它将删除从当前光标位置到行首的所有内容。

同样,如果按 Ctrl+K,它会删除从光标位置到行尾的所有内容。

可能在输入密码时出错?无需一直使用退格键,只需使用 Ctrl+U 并重新输入密码即可。

10、从意外的 Ctrl+S 中解冻你的 Linux 终端

你可能习惯使用 Ctrl+S 进行保存。但是如果你在 Linux 终端中使用它,你将有一个冻结的终端。

不必关闭终端再打开。只需使用 Ctrl+Q 即可再次使用终端。

ctrl+Q

11、实时读取日志文件

在需要在应用程序运行时分析日志的情况下,可以使用带有 -f 选项的 tail 命令。

tail -f path_to_Log

还可以使用常规 grep 选项仅显示对ni 有意义的那些行:

tail -f path_to_log | grep search_term

也可以在此处使用选项 F。即使日志文件被删除,这也将保持尾部运行。因此,如果再次创建日志文件,tail 将继续记录。

在这里插入图片描述

12、无需解压即可读取压缩日志

服务器日志通常采用 gzip 压缩以节省磁盘空间。它为开发人员或系统管理员分析日志带来了问题。你可能必须将其安全复制 ( scp ) 到本地,然后将其解压缩以访问文件,因为有时你没有提取日志的写权限。

scp允许将文件在不同主机之间复制。它采用SSH进行数据传输,并提供相同的认证和安全性是同级别的ssh。

z 命令提供了用于处理日志文件的常规命令(例如 lesscatgrep 等)的替代方法。

因此,你可以使用 zlesszcatzgrep 等。使用这些 Z 命令的最大好处是不必解压缩压缩文件,它直接作用于压缩文件。

  • zcat 代替 cat :查看压缩文件
  • zgrep 代替 grep :在压缩文件中搜索
  • zless 代替 less, zmore 代替 more:以页为单位查看文件
  • zdiff代替 diff :查看两个压缩文件之间的差异

13、使用less读取文件

要查看文件的内容, cat 不是最佳选择,尤其是如果它是一个大文件。cat 命令将在屏幕上显示整个文件。

可以使用 ViVim 或其他基于终端的文本编辑器,但如果只想读取文件,less 命令是更好的选择。

less path_to_file

可以在 less 内搜索术语、按页移动、显示行号等。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
Q键即可推出less

14、 用!!在当前命令中的重用前一个命令

可以使用 !! 调用整个上一个命令。当你必须运行命令并意识到它需要 root 权限时,这尤其有用。

一个快速的 sudo !! 在这里节省了大量的击键。

在这里插入图片描述

15、使用别名(alias)修复拼写错误

Linux 中的alisa命令来修复拼写错误。

例如,你可能经常将 grep 错误地输入为 gerp。如果你以这种方式在 bashrc 中放置别名:

alias gerp=grep

这样你就不必再次重新键入命令。

建议在 Linux 中使用 alias 命令将复杂的命令替换为简单的命令,可以节省大量时间。

16、在Linux终端复制粘贴

这取决于 Linux 发行版和终端应用程序。但总的来说,应该能够使用以下快捷方式在终端中复制粘贴:

  • 选择要复制的文本并右键单击进行粘贴(适用于 Putty 和其他 Windows SSH 客户端)
  • 选择要复制的文本并单击鼠标中键(鼠标上的滚动按钮)进行粘贴
  • Ctrl+Shift+C 复制,Ctrl+Shift+V 粘贴

17、杀死正在运行的命令/进程

如果有一个命令在前台运行并且你想退出它,可以按 Ctrl+C 停止该正在运行的命令。

18、对需要交互响应的命令或脚本使用 yes 命令

如果有一些命令或脚本需要用户交互,并且你知道每次需要输入时都必须输入 Y,则可以使用 Yes 命令。

只需按以下方式使用它:

yes | command_or_script

19、清空文件而不删除它

如果只想清空文本文件的内容而不删除文件本身,可以使用类似于以下的命令:

> filename

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

20、 查找是否有包含特定文本的文件

在 Linux 命令行中有多种搜索和查找方法。但是如果你只想查看是否有包含特定文本的文件,则可以使用以下命令:

grep -Pri Search_Term path_to_directory

在这里插入图片描述

21、对任何命令使用帮助

几乎所有的命令和命令行工具都带有一个帮助页面,显示如何使用命令。经常使用帮助会告诉你工具/命令的基本用法。

只需以这种方式使用它:

command_tool --help

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


点击全文阅读


本文链接:http://zhangshiyu.com/post/32726.html

命令  终端  文件  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1