后端程序员的Linux命令指南

后端程序员的终极命令指南:考考自己是不是真正掌握Linux的使用

欢迎各位穿着格子衬衫,常年抱着键盘睡觉的后端小伙伴们👋👋👋!今天,考考你们是不是掌握以下让你们在日后在服务器上叱咤风云的命令。如果都能答上来,想必日后工作中有关Linux系统的使用已经难不倒你了,如果没答上来也不要气馁,毕竟Linux系统的命令比较多,知道有这个命令即可,忘记利用搜索引擎🔍查看即可,不必强求背下。

关键词远程登录文件操作权限管理查找指令解压缩查看网络shell命令项目部署目录操作进程管理其他命令管道符

问题(答案在结尾)

建议:先做再看🌟🌟🌟

远程登录

Question 1: 使用哪条命令可以通过SSH连接到远程服务器?

Question 2: 如何在SSH连接时指定端口号? 🙅

文件操作

Question 3: 使用哪条命令可以创建一个新文件?

Question 4: 如何复制文件到另一个目录?

Question 5: 如何移动文件到另一个目录?

Question 6: 如何删除一个文件?

权限管理

Question 7: 如何更改文件的权限?

Question 8: 如何更改文件的所有者?

Question 9: 如何授予某个用户文件的读写权限?

查找指令

Question 10: 使用哪条命令可以在当前目录及其子目录中查找文件?

Question 11: 如何查找包含特定字符串的文件?

Question 12: 如何查找并删除某个扩展名的所有文件?

解压缩

Question 13: 使用哪条命令可以解压缩一个.tar.gz文件?

Question 14: 如何压缩目录为.zip文件?

Question 15: 如何查看.tar.gz文件的内容而不解压缩?

查看网络(重要‼️)

Question 16: 使用哪条命令可以查看当前系统的网络连接情况?

Question 17: 如何检查某个端口是否被占用?

Question 18: 如何显示当前机器的IP地址?

Shell命令

Question 19: 如何在Bash中定义一个变量?

Question 20: 使用哪条命令可以查看所有正在运行的后台进程?

Question 21: 如何将命令的输出重定向到一个文件?

项目部署

Question 22: 使用Docker如何构建一个镜像?

Question 23: 使用Docker如何进行卷挂载?

Question 24: 如何查看容器日志?

目录操作

Question 25: 使用哪条命令可以创建一个新目录?

Question 26: 如何删除一个非空目录?

Question 27: 如何切换到上一级目录?

进程管理(重要‼️)

Question 28: 使用哪条命令可以查看所有运行中的进程?

Question 29: 如何杀死一个指定的进程?

Question 30: 如何查看某个进程的详细信息?

其他命令

Question 31: 如何查看系统的磁盘使用情况?

Question 32: 使用哪条命令可以查看系统的内存使用情况?

Question 33: 如何查看系统的当前时间和日期?

定位项目异常(重要‼️)

Question 34: 如何查看项目的日志文件?

Question 35: 使用哪条命令可以实时监控日志文件的变化?

Question 36: 如何查找日志文件中包含特定关键字的行?

Question 37: 如何查看系统的错误日志?

Question 38: 如何查看某个进程的详细日志信息?

Question 39: 如何查看服务器的CPU和内存使用情况,以检测是否有异常?

管道符(重要‼️)

Question 40: 如何将ls命令的输出通过管道符传递给grep命令来查找文件名中包含“log”的文件?

Question 41: 如何将ps命令的输出通过管道符传递给grep命令来查找包含“nginx”的进程?

Question 42: 如何将df命令的输出通过管道符传递给grep命令来查找包含“sda”的磁盘信息?

答案

远程登录

Ans 1: 使用命令 ssh user@hostname 可以通过SSH连接到远程服务器。

  • 示例ssh user@192.168.1.1

Ans 2: 使用命令 ssh -p port user@hostname 在SSH连接时指定端口号。

  • 示例ssh -p 2222 user@192.168.1.1
文件操作

Ans 3: 使用命令 touch filename 可以创建一个新文件。

  • 示例touch newfile.txt

Ans 4: 使用命令 cp source destination 可以复制文件到另一个目录。

  • 示例cp file.txt /home/user/Documents/

Ans 5: 使用命令 mv source destination 可以移动文件到另一个目录。

  • 示例mv file.txt /home/user/Documents/

Ans 6: 使用命令 rm filename 可以删除一个文件。

  • 示例rm oldfile.txt
权限管理

Ans 7: 使用命令 chmod permissions filename 可以更改文件的权限。

  • 示例chmod 755 script.sh

Ans 8: 使用命令 chown owner:group filename 可以更改文件的所有者。

  • 示例chown user:group file.txt

Ans 9: 使用命令 chmod u+rw filename 可以授予某个用户文件的读写权限。

  • 示例chmod u+rw file.txt
查找指令

Ans 10: 使用命令 find . -name "filename" 可以在当前目录及其子目录中查找文件。

  • 示例find . -name "file.txt"

Ans 11: 使用命令 grep -r "search_string" directory 可以查找包含特定字符串的文件。

  • 示例grep -r "TODO" /home/user/projects/

Ans 12: 使用命令 find . -name "*.ext" -exec rm {} \; 可以查找并删除某个扩展名的所有文件。

  • 示例find . -name "*.log" -exec rm {} \;
解压缩

Ans 13: 使用命令 tar -xzvf file.tar.gz 可以解压缩一个.tar.gz文件。

  • 示例tar -xzvf archive.tar.gz

Ans 14: 使用命令 zip -r archive.zip directory 可以压缩目录为.zip文件。

  • 示例zip -r backup.zip /home/user/Documents/

Ans 15: 使用命令 tar -tzvf file.tar.gz 可以查看.tar.gz文件的内容而不解压缩。

  • 示例tar -tzvf archive.tar.gz
查看网络

Ans 16: 使用命令 netstat -tuln 可以查看当前系统的网络连接情况。

  • 示例netstat -tuln

Ans 17: 使用命令 lsof -i :port 可以检查某个端口是否被占用。

  • 示例lsof -i :80

Ans 18: 使用命令 ip addr 可以显示当前机器的IP地址。

  • 示例ip addr
Shell命令

Ans 19: 使用命令 variable=value 可以在Bash中定义一个变量。

  • 示例myvar="Hello World"

Ans 20: 使用命令 jobs 可以查看所有正在运行的后台进程。

  • 示例jobs

Ans 21: 使用命令 command > file 可以将命令的输出重定向到一个文件。

  • 示例ls > filelist.txt
项目部署

Ans 22: 使用命令 docker build -t imagename . 可以使用Docker构建一个镜像。

  • 示例docker build -t myapp .

Ans 23: 使用命令 docker run -v host_dir:container_dir imagename 可以使用Docker进行卷挂载。

  • 示例docker run -v /home/user/data:/data myapp

Ans 24: 使用命令 docker logs container_id 可以查看容器日志。

  • 示例docker logs 1234567890ab
目录操作

Ans 25: 使用命令 mkdir directory 可以创建一个新目录。

  • 示例mkdir new_directory

Ans 26: 使用命令 rm -r directory 可以删除一个非空目录。

  • 示例rm -r old_directory

Ans 27: 使用命令 cd .. 可以切换到上一级目录。

  • 示例cd ..
进程管理

Ans 28: 使用命令 ps aux 可以查看所有运行中的进程。

  • 示例ps aux

Ans 29: 使用命令 kill -9 PID 可以杀死一个指定的进程。

  • 示例kill -9 1234

Ans 30: 使用命令 tophtop 可以查看某个进程的详细信息。

  • 示例top
其他命令

Ans 31: 使用命令 df -h 可以查看系统的磁盘使用情况。

  • 示例df -h

Ans 32: 使用命令 free -m 可以查看系统的内存使用情况。

  • 示例free -m

Ans 33: 使用命令 date 可以查看系统的当前时间和日期。

  • 示例date
定位项目异常

Ans 34: 使用命令 cat /path/to/logfile 可以查看项目的日志文件。

  • 示例cat /var/log/myapp.log

Ans 35: 使用命令 tail -f /path/to/logfile 可以实时监控日志文件的变化。

  • 示例tail -f /var/log/myapp.log

Ans 36: 使用命令 grep "keyword" /path/to/logfile 可以查找日志文件中包含特定关键字的行。

  • 示例grep "ERROR" /var/log/myapp.log

Ans 37: 使用命令 journalctl -xe 可以查看系统的错误日志。

  • 示例journalctl -xe

Ans 38: 使用命令 cat /proc/PID/fd/1 可以查看某个进程的详细日志信息。

  • 示例cat /proc/1234/fd/1

Ans 39: 使用命令 tophtop 可以查看服务器的CPU和内存使用情况,以检测是否有异常。

  • 示例top
管道符

Ans 40: 使用命令 ls | grep "log" 可以将ls命令的输出通过管道符传递给grep命令来查找文件名中包含“log”的文件。

  • 示例ls | grep "log"

Ans 41: 使用命令 ps aux | grep "nginx" 可以将ps命令的输出通过管道符传递给grep命令来查找包含“nginx”的进程。

  • 示例ps aux | grep "nginx"

Ans 42: 使用命令 df -h | grep "sda" 可以将df命令的输出通过管道符传递给grep命令来查找包含“sda”的磁盘信息。

  • 示例df -h | grep "sda"

总结

如果你掌握了以上这些命令,那么你已经能够在后端开发的道路上独当一面了。这些命令覆盖了从远程登录到文件操作,从权限管理到进程管理,再到项目异常定位的方方面面。无论是日常维护还是紧急故障处理,都能让你得心应手。

当然,Linux命令远不止这些,继续深入学习和实践,你会发现更多有趣且强大的工具。希望这篇指南对你有所帮助,也祝你在后端开发的世界里畅游无阻,成为一名真正的终端大师!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/31545.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于微信小程序取消获取用户昵称的一些思考

官方说明,有部分小程序乱用授权,强迫用户提交头像和昵称。 核心是微信担心用户信息被滥用。 其一 ,微信头像经常是本人真是照片,在现在人工智能算法的加持下,人脸数据太容易被套取。 其二,微信名称同理&…

Gobject tutorial 九

The GObject messaging system Closures closure是一个抽象、通用的概念,它包含一个函数和一些变量。作用就是实现函数回调功能。 我们看看GLib对closure是怎么定义的。 /*** GClosure:* in_marshal: Indicates whether the closure is currently being invoked…

pip install镜像源(更新和换源)

pip install镜像源(更新和换源) 1.pip安装依赖包默认访问的源: 因为服务器架设在国外的缘故,很多时候不好用网速不行,这时候就需要选择国内的一些安装源安装相应的包 https://pypi.Python.org/simple/2.设置默认源 …

【React】useState 更新延迟的原因是什么,怎么解决?

useState 更新延迟的原因 异步更新:React 中的 useState 更新是异步的,这意味着当你调用更新函数(如 setData)时,React 并不立即同步更新状态,而是将其放入一个待处理的队列中,稍后在适当的时候(如在下一次渲染之前)进行处理。因此,如果你尝试在调用更新函数后立即读…

CVPR 2024第三弹:小编与李飞飞教授惊喜同框,CVPR之家乐队火爆演奏惊艳全场

CVPR 2024第三弹:小编与李飞飞教授惊喜同框,"CVPR之家"乐队火爆演奏惊艳全场! 会议之眼 快讯 2024 年 CVPR (Computer Vision and Pattern Recogntion Conference) 即国际计算机视觉与模式识别会议,于6月1…

最新评测:2024年13款国内外缺陷跟踪管理工具(含免费/开源)

文章中介横向对比了11款主流缺陷管理工具:1. PingCode;2. Worktile;3. Jira;4. ZenTao(禅道);5. Bugzilla;6. Redmine;7. Tapd;8. MantisBT;9. Tr…

AttributeError: ‘ImageDraw‘ object has no attribute ‘textsize‘

python项目生成词云图的时候报错:AttributeError: ‘ImageDraw’ object has no attribute ‘textsize’ 解决办法 出现这个问题,可能是因为Pillow版本过高导致的,我们可以尝试通过降低Pillow的版本来解决它。 我通过将Pillow版本降低到9.4.…

贴图法美化Button按钮

贴图法美化Button按钮 项目是在下面这篇文章里的基础上进行美化的:MFC实现INI配置文件的读取 1. 初始效果 2.最终效果 3. 增加 CImgButton 类 1.1 ImgButton.h 头文件 #pragma once // CImgButtonclass CImgButton : public CBitmapButton {DECLARE_DYNAMIC(CImgBu…

游戏本地化以拓展海外市场

Logrus IT Korea的总监元庆燕(KyoungYeon Won)发表了一场关于“游戏本地化”的讲座,讲述了独立游戏开发者如何在梦想拓展海外市场的过程中,正确地本地化他们的游戏以满足国际市场的期望,以及实现这一重要任务的过程。 …

NFS环境部署

服务端 1.是否安装过 rpm -qa nfs-utils rpcbbind 2.安装 创建共享文件夹更改文件夹用户和组给文件夹赋权限 yum install -y nfs-utils rpcbbind # mkdir -p /mnt/data/localnfs/ # chown -R nfsnobody:nfsnobody /mnt/data/localnfs/ # chmod 766 /mnt/data/localnfs/ 3.修改…

注解详解系列 - @ResponseStatus

注解简介 在今天的每日一注解中,我们将探讨ResponseStatus注解。ResponseStatus是Spring框架中的一个注解,用于为控制器方法指定HTTP响应状态码和理由短语。 注解定义 ResponseStatus注解用于标记控制器方法或异常类,以指示HTTP响应的状态码…

webpack 压缩图片

压缩前: 压缩后: 压缩后基本上是压缩了70-80%左右 1.依赖版本及配置 "imagemin-webpack-plugin": "^2.4.2", "imagemin-mozjpeg": "^7.0.0", "imagemin-pngquant": "^5.0.1", "webpa…

【项目工具】相关工具整理

陆续整理... 在线画饼图等:https://www.liuchengtu.com/chart/histogram/ - 迅捷画图 在线话流程图:https://www.processon.com/diagrams - ProcessOn 在线ps编辑图:https://www.uupoop.com/ - 在线PS软件

JDK为什么要配置Paht和Classpath

目录 一、Path环境变量 二、Classpath环境变量 三、总结 在Java中,JDK(Java Development Kit)的配置是开发Java应用程序的重要步骤之一。配置JDK主要包括设置两个关键的环境变量:Path和Classpath。这两个环境变量在Java开发和运…

定个小目标之刷LeetCode热题(26)

这道题属于一道简单题&#xff0c;可以使用辅助栈法&#xff0c;代码如下所示 class Solution {public boolean isValid(String s) {if (s.isEmpty())return false;// 创建字符栈Stack<Character> stack new Stack<Character>();// 遍历字符串数组for (char c : …

探索Java异常处理的奥秘:源码解析与高级实践

1. 引言 在Java编程的广阔天地中,异常处理是确保程序健壮性、稳定性和可维护性的重要基石。对于Java工程师而言,深入理解Java异常处理的机制,并能够在实践中灵活运用,是迈向卓越的重要一步。 2. 基本概念 在Java中,异常(Exception)是程序执行期间出现的不正常或错误情况…

项目3:从0开始的RPC框架(扩展版)-2

六. 自定义协议 1. 需求分析 在目前的RPC框架中&#xff0c;采用Vert.x的HttpServer作为服务提供者的Web服务器&#xff0c;底层使用HTTP协议进行网络传输。但HTTP协议只是RPC框架网络传输的一种可选方式&#xff0c;还有其它更好的选择。 RPC框架注重性能&#xff0c;但HTT…

基于组件的架构:现代软件开发的基石

目录 前言1. 基于组件的架构概述1.1 什么是组件&#xff1f;1.2 组件的分类 2. 基于组件的架构的优势2.1 提高代码的可重用性2.2 增强系统的灵活性2.3 简化维护和升级2.4 促进团队协作 3. 实现基于组件的架构3.1 识别和定义组件3.2 设计组件接口3.3 组件的开发和测试3.4 组件的…

【启明智显产品分享】工业级HMI芯片——Model3,不止是速度,USB\CAN\8路串口

一、引言 Model3作为一款工业级HMI芯片&#xff0c;其性能卓越且功能全面。本文将从多个角度深入介绍Model3芯片&#xff0c;以展示其不仅仅是速度的代表。 二、Model3核心特性介绍 Model3工业级跨界MCU是一款国产自主的基于RISC-V架构的高性能芯片&#xff0c;内置平头哥E…

作为一名车载测试工程师,核心能力是什么?

核心能力 汽车系统知识&#xff1a;作为车载测试工程师&#xff0c;首先需要具备深入的汽车系统知识&#xff0c;包括动力系统、传动系统、底盘系统、车身系统等各个方面的知识。只有对汽车系统有足够的了解&#xff0c;才能进行有效的测试和验证工作。 测试方法和工具&#xf…