Linux终端常见用法总结

发表于:2023-11-02 09:37

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:任吉宏    来源:51Testing软件测试网原创

  Linux终端常见用法总结
  一、前言
  熟悉Linux终端的基础用法和常见技巧可以极大提高运维及开发人员的工作效率,笔者结合自身学习实践,总结以下终端用法供同行交流学习。
  二、常见用法
  1.快捷键
  1.1.Alt + .
  在光标位置插入上一次执行命令的最后一个参数。
  1.2.Ctrl + R
  模糊搜索历史执行命令。下载安装fzf可以提升该命令的交互性。
  1.3.Ctrl + Z
  将正在执行的命令送入后台,以继续使用终端。执行bg命令可以查看后台正在执行的命令列表,执行fg命令可以调回后台正在执行的命令。
  1.4.Ctrl + A
  移动光标到首位字符。例如,在已输入命令前追加sudo,赋予命令执行权限。
  1.5.Ctrl + E
  移动光标到末位字符。例如,在已输入命令后追加&,将命令送入后台执行。
  1.6.Ctrl + U
  删除全部已输入字符。
  1.7.Ctrl + W
  删除光标所在单词。
  2.命令
  2.1.cd
  切换目录。例如,使用cd -回到上一次执行cd时所在目录。
  2.2.mkdir
  创建目录。例如,使用mkdir -p <**/*/dirname>创建嵌套目录。
  2.3.xargs
  将管道的标准输入作为执行命令的输入。例如,使用ls | xargs -I {} echo "{}"将ls展示的目录内文件列表重新分行打印,其中,-I {}是将标准输入表示为{}。
  2.4.tee
  将管道的标准输入同时写入标准输出和文件。例如,使用echo "foo" | tee <filename>打印文本并写入文件,使用echo “foo” | tee >(<command>)打印文本并作为命令输入,使用echo "foo" | tee >(xargs mkdir) >(wc -c)打印文本及其长度并创建同名目录。
  2.5.find
  在指定目录下查询目录或文件。例如,使用find . -f '*.log' -exec ls -l {} +将目录下log文件名转换为参数列表,使用find . -f '*.log' -exec ls -l {} \;逐行打印目录下log文件名。
  2.6.tr
  字符替换。例如,使用echo $PATH | tr ':' '\n'逐行打印系统路径。
  2.7.cut
  切分输入文本。例如,使用cur -f, 1 <csvfile>打印CSV文本的第一列。
  2.8.awk
  对多行输入文本中与模式(pattern)匹配的行实现基于列的操作(action)。例如,使用awk -F ',' '{print $NF}' <csvfile>打印CSV文本的最后一列。
  2.9.nohup
  命令执行进程不会随用户或终端退出。例如,使用nohup <command> &将命令进程送入后台,使用nohup >log.out 2>log.error保存命令执行日志。
  2.10.tar
  打包工具。例如,使用tar czvf <filename>.tar.gz打包并压缩日志文件,使用tar xvf <filename>.tar.gz解包文件。
  2.11.lsof
  列表已打开文件及其进程。例如,使用lsof -ti :<port> | xargs kill关闭端口进程。
  2.12.tail -f
  持续打印目标文件新增文本。例如,使用tail -f <filename>持续打印日志文件的新增文本。
  2.13.watch
  重复执行命令。例如,使用watch -n 1 nvidia-smi观测GPU的资源利用情况。
  2.14.top
  查看系统资源和进程的占用情况。
  2.15.du
  查看磁盘占用情况。例如,使用du -sh <dirname>查看目录的磁盘占用情况。
  3.特殊字符
  3.1.>
  重定向。例如,使用command >log.out将标准输出写入log.out,使用command >>log.out将标准输出追加到log.out末尾,使用command 2>log.err将标准错误写入log.err,使用command &>log将标准输出和标准错误写入log,使用command 2>&1 >dev/null只打印标准错误。
  3.2.$_
  上一次执行命令的最后一个参数。
  3.3.$?
  上一次执行命令的退出码。
  3.4.!!
  重复上一次执行命令。除此之外,还可以使用!*重复上一次执行命令的参数列表,使用!$重复上一次执行命令的最后一个参数。
  三、总结
  掌握Linux终端的常见用法不仅是编写脚本和实现自动化的基础,也能有效提高运维及开发人员的系统运维和故障排查能力。本文从Linux终端快捷键、命令及特殊字符三大类出发,分别介绍常见用法并例举,希望与同行分享,共同学习进步。
  版权声明:本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号