大多数现代Linux发行版均已为此命令预配置了shell。在这里至少可以节省两次击键。
快速返回主目录
4、列出目录的内容
您一定在想在列出目录内容的命令中还有了什么技巧。每个人都知道在这种情况下使用ls -l。
就是这样。大多数人使用ls -l来列出目录的内容,而同样的事情也可以用下面的命令来完成:
ll
同样,这也取决于Linux发行版和shell配置,但是您很可能能够在大多数Linux发行版中使用它。
使用ll而不是ls -l
5、在一个命令中运行多个命令
假设您必须一个接一个地运行几个命令。您是否在等待第一个命令完成运行,然后执行下一个命令?
那么,您可以使用“;”分隔符。这样,您可以在一行中运行许多命令。无需等待先前的命令完成后再执行其他任务。
command_1; command_2; command_3
6、仅在上一个命令成功的情况下,才能在一个命令中运行多个命令
在上一个命令中,您了解了如何在一个命令中运行多个命令以节省时间。但很多时候你必须确保命令不会失败才能执行下一条命令,那怎么半?
比如您要构建代码,然后在构建成功的情况下才接着运行make。
在这种情况下,可以使用&&分隔符。&&确保下一条命令仅在上一条命令成功执行时运行。
command_1 && command_2
此命令的一个很好的例子是当您使用sudo apt update && sudo apt upgrade升级系统时。
7、轻松搜索您使用过的命令
想象一下一种情况,您在几分钟/几小时前使用了很长的命令,而您不得不再次使用它。问题是您不再记得确切的命令了。
反向搜索是您的救星。您可以使用搜索词在历史记录中搜索命令。
只需使用ctrl + r键即可启动反向搜索并键入命令的某些部分。它将查询历史记录,并向您显示与搜索词匹配的命令。
ctrl + r 搜索词
默认情况下,它将仅显示一个结果。要查看更多与您的搜索字词匹配的结果,您将不得不反复使用ctrl + r。要退出反向搜索,只需使用Ctrl + C。
在命令历史记录中进行反向搜索
请注意,在某些Bash Shell中,还可以在搜索词中使用Page Up和Down键,它将自动完成命令。
8、解除Linux终端意外冻结的Ctrl + S
在很多类Unix 的系统上,Ctrl-S 都有特殊的含义:它会“冻结”终端(它曾经被用来暂停快速滚动)。因为“保存”一般也是用这个快捷键,所以经常会有人不假思索地按下这个快捷键,结果大多数人都会被搞糊涂(我也经常犯这个错误)。解冻终端是用Ctrl-Q,所以如果你忽然发觉终端看起来被冻结了,试一下Ctrl-Q,看能不能释放它。
9、移至行首或行尾
假设您正在键入一个长命令,并且在途中您意识到必须在开始时进行一些更改。您将使用几次向左键击移动到行的开头。并且类似地进行到该行的末尾。
当然,您可以在此处使用Home和End键,但是也可以使用Ctrl + A转到行的开头,并使用Ctrl + E转到结尾。
动图演示如下
移至该行的开头或结尾
我发现它比使用Home和End键更方便,尤其是在笔记本电脑上。
10、实时读取日志文件
在需要在应用程序运行时分析日志的情况下,可以将tail命令与-F选项一起使用。
tail -F linuxidc_log
等同于–follow=name --retry,根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪。
11、读取压缩日志而不解压缩
服务器日志通常被gzip压缩以节省磁盘空间。这给分析日志的开发人员或系统管理员带来了一个问题。您可能必须将其scp到本地,然后提取它来访问文件,因为有时您没有提取日志的写权限。
值得庆幸的是,在这种情况下,z命令可以帮助您。z命令提供了用于处理日志文件(例如less,cat,grep等)的常规命令的替代方法。
这样您就可以使用zless,zcat,zgrep等命令查看压缩包的内容,甚至不必显式提取压缩文件。
[linuxidc@localhost ~/www.linuxidc.com]$zcat linuxidc_log.zip | more
不解压缩读取压缩文件
12、使用 less读取文件
要查看文件的内容,cat不是最佳选择,特别是如果文件很大。cat命令将在屏幕上显示整个文件。
您可以使用Vi,Vim或其他基于终端的文本编辑器,但是如果您只想读取文件,则 less 命令是更好的选择。
less -N linuxidc.txt
//按下v键来编辑文件
//退出编辑器后,你可以继续用less浏览了
您可以在更少的范围内搜索字词,按页移动,高亮与行号等。
13、使用 !$ 重新使用上一个命令中的最后一项
在许多情况下,使用上一个命令的参数很方便。
假设您必须创建一个目录,然后进入新创建的目录。那么,您可以使用!$选项。
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
言尽于此,完结
无论是一个初级的 coder,高级的程序员,还是顶级的系统架构师,应该都有深刻的领会到设计模式的重要性。
- 第一,设计模式能让专业人之间交流方便,如下:
程序员A:这里我用了XXX设计模式
程序员B:那我大致了解你程序的设计思路了
- 第二,易维护
项目经理:今天客户有这样一个需求…
程序员:明白了,这里我使用了XXX设计模式,所以改起来很快
- 第三,设计模式是编程经验的总结
程序员A:B,你怎么想到要这样去构建你的代码
程序员B:在我学习了XXX设计模式之后,好像自然而然就感觉这样写能避免一些问题
- 第四,学习设计模式并不是必须的
程序员A:B,你这段代码使用的是XXX设计模式对吗?
程序员B:不好意思,我没有学习过设计模式,但是我的经验告诉我是这样写的
从设计思想解读开源框架,一步一步到Spring、Spring5、SpringMVC、MyBatis等源码解读,我都已收集整理全套,篇幅有限,这块只是详细的解说了23种设计模式,整理的文件如下图一览无余!
搜集费时费力,能看到此处的都是真爱!
四,学习设计模式并不是必须的
程序员A:B,你这段代码使用的是XXX设计模式对吗?
程序员B:不好意思,我没有学习过设计模式,但是我的经验告诉我是这样写的
[外链图片转存中…(img-cdyJl7Kl-1711128180846)]
从设计思想解读开源框架,一步一步到Spring、Spring5、SpringMVC、MyBatis等源码解读,我都已收集整理全套,篇幅有限,这块只是详细的解说了23种设计模式,整理的文件如下图一览无余!
[外链图片转存中…(img-62gtBuSH-1711128180847)]
搜集费时费力,能看到此处的都是真爱!