Linux命令行技巧
来源:linuxstall.com | 作者:Chankey Pathak
下面我将和大家分享一些学习Linux命令行的技巧,希望能对大家有所助益。如果在本文中遇到不太熟悉的命令,可以在终端中键入以下命令寻求帮助。
- Man <command>

Where there's a shell, there's a way.
Linux入门必备
- 了解bash:没有必要钻研长篇累牍的bash使用手册,通过man bash学习即可。
- 了解vi:你在工作中也许会使用Emacs或Eclipse,但vi不可替代。
- 了解ssh:学习无密码验证的基础知识。
- bash作业管理基础知识:如使用&、Ctrl-C、fg、bg、Ctrl-Z、jobs和kill等。
- 文件管理命令:如硬链接和软链接,权限等。
- 网络管理命令:如ifconfig等。
- 如何使用正则表达式,如何使用grep、sed等。
- 学习使用apt-get和yum管理软件包。
提升日常工作效率
- 在bash中,可以使用Ctrl+R命令搜索命令行历史记录。
- 在bash中,可以使用Ctrl+W删除最后一个单词,使用Ctrl+U删除整行。
- 使用cd -命令返回之前的工作目录,使用cd ..命令返回上层目录。
- 学习如何使用xargs:
-
$ find . -name *.py | xargs grep some_function
-
$ cat hosts | xargs -I{} ssh root@{} hostnameX
- 使用pstree -p命令查看进程树。
- 了解不同的信号。例如,使用kill -STOP [PID]终止进程。详细的信号列表可以在man 7 signal中查看。
- 如果你想让进程永远在后台运行,可以使用nohup和disown命令。
- 使用netstat -lntp命令查看侦听进程,并参考lsof命令。
- 在bash脚本中使用subshells对命令进行分组:
-
#do something in current dir
-
(cd /some/other/dir; other-command)
-
#continue in original dir
- 字符串修剪(Trimming Strings):${var%suffix}和${var#prefix}。例如if var=foo.pdf then echo ${var%.pdf}.txt prints "foo.txt"。
- 命令的输出可以当做文件使用。例如,比较本地和远程的/etc/hosts文件:
- diff /etc/hosts <(ssh somehost cat /etc/hosts)
- 了解bash中的“here documents”。
- 了解标准输出和标准错误重定向。
- 了解ASCII代码表。可以在终端中运行man ascii命令作为参考。
- 当通过ssh远程工作时,可以使用screen 或 dtach保存回话。
- 对Web开发者而言,curl、wget等命令非常实用。
- 将HTML页面转化文本文件:
- lynx -dump -stdin
- 如果要掌握XML,xmlstarlet命令是非常好的工具。
- 了解ssh端口映射。
- 使用Alt+shift+3快捷键可以在行前添加注释“#”。
数据处理
- 了解sort和uniq命令。
- 了解cut、paste和join命令。
- 了解如何对文本文件做交集、并集和差集:
-
cat a b | sort | uniq > c # c is a union b
-
cat a b | sort | uniq -d > c # c is a intersect b
-
cat a b b | sort | uniq -u > c # c is set difference a – b
- 对文本文件的第二列做摘要,下面的代码要比同样的Python代码更精炼、快速(3倍):
- awk '{ x += $2 } END { print x }'
- 了解字符串和grep命令。
- 文件分割:了解split(按大小分割)和csplit(按匹配分割)命令。
系统诊断
- 使用iostat、netstat、top和dstat命令查看磁盘、处理器和网络的状态。
- 使用free、vmstat等命令了解系统内存状态。
- 使用mtr网络诊断工具。
- 使用iftop、nethogs等工具查看占用带宽的进程和带宽。
- 使用ab工具快速洞悉Web服务器的性能。
- 以wireshark和tshark命令应对复杂网络诊断。
- 学习如何使用strace,并用于诊断运行的进程。这对分析程序运行错误的原因,非常有帮助。
- 使用ldd命令查看共享库文件。
- 了解如何使用gdb连接到运行中的进程,并进行堆栈跟踪。
- 有关/proc的知识非常重要。
- 如何诊断已发生的错误?Sar命令是一种很好的选择,它可以收集、保存并报告系统信息。
分享到:
相关推荐
Linux入门常用命令 Linux新手教程,包括入门常用命令
在深入探讨Linux入门常用命令之前,我们先简要回顾一下Linux操作系统的基本概念。Linux是一种开源、免费的操作系统,由Linus Torvalds于1991年首次发布,基于UNIX的设计思想,但与UNIX并不完全兼容。Linux因其高度的...
### Linux入门常用命令详解 #### 一、引言 Linux 是一种开源的操作系统,因其稳定性和安全性被广泛应用于服务器领域和个人计算机系统。对于初学者来说,掌握一些基本的 Linux 命令是非常重要的,这些命令可以帮助...
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
《基于YOLOv8的智慧社区独居老人生命体征监测系统》(包含源码、可视化界面、完整数据集、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计
Android Studio Meerkat 2024.3.1 Patch 1(android-studio-2024.3.1.14-mac.dmg)适用于macOS Intel系统,文件使用360压缩软件分割成两个压缩包,必须一起下载使用: part1: https://download.csdn.net/download/weixin_43800734/90557060 part2: https://download.csdn.net/download/weixin_43800734/90557056
侧轴承杯加工工艺编制及夹具设计.zip
NASA数据集锂电池容量特征提取(Matlab完整源码和数据) 作者介绍:机器学习之心,博客专家认证,机器学习领域创作者,2023博客之星TOP50,主做机器学习和深度学习时序、回归、分类、聚类和降维等程序设计和案例分析,文章底部有博主联系方式。从事Matlab、Python算法仿真工作8年,更多仿真源码、数据集定制私信。
板料折弯机液压系统设计.zip
C6150车床的设计.zip
机器学习之KNN实现手写数字
python爬虫;智能切换策略,反爬检测机制
mpls-vpn-optionA-all
56tgyhujikolp[
GB 6442-86企业职工伤亡事故调查分析规则.pdf
汽车液压式主动悬架系统的设计().zip
2000-2024年各省专利侵权案件结案数数据 1、时间:2000-2024年 2、来源:国家知识产权J 3、指标:专利侵权案件结案数 4、范围:31省 5、用途:可用于衡量知识产权保护水平
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
内容概要:本文档详细复现了金融数学课程作业,涵盖欧式看涨期权定价和投资组合优化两大部分。对于欧式看涨期权定价,分别采用Black-Scholes模型和蒙特卡洛方法进行了计算,并对彩虹期权进行了基于最大值的看涨期权定价。投资组合优化部分则探讨了最小方差组合、给定收益的最小方差组合、最大效用组合以及给定风险的最大收益组合四种情形,还对比了拉格朗日乘数法和二次规划求解器两种方法。文中不仅提供了详细的MATLAB代码,还有详尽的中文解释,确保每一步骤清晰明了。 适合人群:金融工程专业学生、量化分析师、金融数学爱好者。 使用场景及目标:①帮助学生理解和掌握金融衍生品定价的基本原理和方法;②为从事量化分析的专业人士提供实用工具和技术支持;③作为教学材料辅助高校教师讲授相关内容。 其他说明:文档还包括了完整的论文结构建议,从封面页到结论,再到附录,涵盖了所有必要元素,确保提交的作业符合学术规范。此外,还特别强调了数据预处理步骤,确保代码可以顺利运行。