Linux命令大全:从入门到高效运维

适合人群:Linux新手 | 运维工程师 | 开发者

目录

一、Linux常用命令(每天必用)

1. 文件与目录操作

2. 文件内容查看与编辑

二、次常用命令(按需使用)

1. 系统管理与监控

2. 网络与通信

3. 权限与用户管理

三、高阶技巧与组合命令

1. 管道符 |

2. 重定向 > 和 >>

3. 后台运行 & 和 nohup

四、学习资源推荐


一、Linux常用命令(每天必用)

1. 文件与目录操作
命令作用示例
ls列出目录内容ls -l(详细列表)ls -a(显示隐藏文件)
cd切换目录cd /home(进入home目录)cd ..(返回上级目录)
cp复制文件或目录cp file1.txt dir/(复制文件到目录)
mv移动/重命名文件mv old.txt new.txt(重命名)
rm删除文件或目录rm file.txt(删除文件)rm -rf dir(强制删除目录)
mkdir创建目录mkdir project(创建空目录)
touch创建空文件或更新文件时间戳touch newfile.txt

代码示例

# 创建目录并复制文件  
mkdir backup  
cp /var/log/syslog backup/  # 将系统日志复制到backup目录  # 批量重命名日志文件  
mv /logs/error.log /logs/error_20231015.log  
2. 文件内容查看与编辑
命令作用示例
cat查看文件全部内容cat config.yml(显示配置文件)
more / less分页查看大文件less large_file.log(支持上下翻页)
head / tail查看文件开头/末尾内容tail -f app.log(实时追踪日志更新)
grep文本搜索grep "error" syslog(过滤含error的行)
vim文本编辑器vim file.txt(按i进入编辑,:wq保存退出)

代码示例

# 查找包含特定关键字的日志  
grep "Connection refused" /var/log/nginx/error.log  # 实时监控日志新增内容  
tail -f /var/log/apache2/access.log  

二、次常用命令(按需使用)

1. 系统管理与监控
命令作用示例
top / htop实时监控系统资源(CPU/内存)htop(交互式进程管理)
ps查看进程状态`ps auxgrep nginx`(查找Nginx进程)
kill终止进程kill -9 1234(强制终止PID为1234的进程)
df / du查看磁盘使用情况df -h(人类可读的磁盘空间)du -sh /home(统计目录大小)
free查看内存使用free -m(以MB为单位显示)

代码示例

# 查找并终止占用过高CPU的进程  
ps aux | sort -nk 3 | tail -5  # 按CPU使用率排序  
kill -15 5678                 # 优雅终止PID为5678的进程  
2. 网络与通信
命令作用示例
ping测试网络连通性ping google.com
curl / wget下载文件或测试APIcurl -O http://example.com/file.zip
netstat查看网络连接和端口监听netstat -tuln(显示所有监听端口)
ssh远程登录服务器ssh user@192.168.1.100
scp安全传输文件scp file.txt user@host:/remote/path

代码示例

# 检查80端口是否被占用  
netstat -tuln | grep ":80"  # 从远程服务器下载文件  
scp user@remote:/data/reports.zip ./downloads/  
3. 权限与用户管理
命令作用示例
chmod修改文件权限chmod 755 script.sh(赋予可执行权限)
chown修改文件所有者chown user:group file.txt
sudo以超级用户权限执行命令sudo apt update(更新软件包列表)
useradd创建新用户useradd -m alice(创建用户并生成家目录)
passwd修改用户密码passwd alice

代码示例

# 将目录所有权转移给用户www-data  
chown -R www-data:www-data /var/www/html  # 赋予脚本执行权限  
chmod +x backup_script.sh  

三、高阶技巧与组合命令

1. 管道符 |

将前一个命令的输出作为后一个命令的输入:

# 统计当前目录下文件数量  
ls -l | grep "^-" | wc -l  # 仅统计普通文件  
2. 重定向 > 和 >>
  • > 覆盖写入文件,>> 追加写入文件:

echo "Hello Linux" > log.txt    # 覆盖写入  
date >> log.txt                 # 追加当前时间  
3. 后台运行 & 和 nohup
# 后台运行脚本并忽略挂断信号  
nohup python3 server.py > output.log 2>&1 &  

四、学习资源推荐

  1. 在线练习:Linux命令大全(手册)

  2. 书籍推荐:《鸟哥的Linux私房菜》

  3. 实战平台:OverTheWire(通过游戏学习命令)

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

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

相关文章

Windows 10/11 使用 VSCode + SSH 免密远程连接 Ubuntu 服务器(指定端口)

摘要: 本文详细介绍如何在 Windows 系统上通过 VSCode Remote-SSH 免密登录远程 Ubuntu 服务器(SSH 端口 2202),避免每次输入密码的繁琐操作,提高开发效率。 1. 环境准备 本地系统:Windows 10/11远程服务…

一些需要学习的C++库:CGAL和Eysshot

写在前面: 从开始工作到现在,去过多家公司,多个行业, 虽然大部分时间在通信业,但也有其它的行业的工作没有做完,但也很感兴趣。每次想要研究一下时,总是想不起来。 这里写一些信息,…

蓝桥杯16天刷题计划一一Day01

蓝桥杯16天刷题计划一一Day01(STL练习) 作者:blue 时间:2025.3.26 文章目录 蓝桥杯16天刷题计划一一Day01(STL练习)[P1540 [NOIP 2010 提高组\] 机器翻译 - 洛谷 (luogu.com.cn)](https://www.luogu.com.…

相对位置2d矩阵和kron运算的思考

文章目录 1. 相对位置矩阵2d2. kron运算 1. 相对位置矩阵2d 在swin-transformer中,我们会计算每个patch之间的相对位置,那么我们看到有一连串的拉伸和相减,直接贴代码: import torch import torch.nn as nntorch.set_printoptio…

Redis 版本演进及主要新特性

Redis 版本发布历史 稳定版本时间线 Redis 2.6 (2012年)Redis 2.8 (2013年11月)Redis 3.0 (2015年4月) - 首次支持集群Redis 3.2 (2016年5月)Redis 4.0 (2017年7月)Redis 5.0 (2018年10月)Redis 6.0 (2020年4月)Redis 6.2 (2021年2月)Redis 7.0 (2022年4月) - 最新稳定版(截至…

HTML5 Geolocation(地理定位)学习笔记

一、HTML5 Geolocation简介 HTML5 Geolocation(地理定位)API用于获取用户的地理位置信息。通过这个API,可以获取用户的纬度、经度、海拔等信息。由于地理定位可能涉及用户隐私,因此只有在用户同意的情况下,才能获取其…

爱普生VG3225EFN压控晶振5G基站低噪声的解决方案

在 5G 通信网络的高速发展中,系统噪声的控制成为保障网络可靠性与数据吞吐量的关键。爱普生 VG3225EFN 压控晶振凭借其卓越的低噪声特性,成为 5G 基站时钟系统的理想选择。通过创新的技术设计,这款晶振不仅为基站提供了稳定的时钟基准&#x…

【问题解决】Linux安装conda修改~/.bashrc配置文件后,root 用户下显示 -bash-4.2#

问题描述 在Linux安装conda下的python环境时候,修改了~/.bashrc文件,修改完成后,再次进入服务器后,登录时候显示的不是正常的[rootlocalhost ~]#,而是-bash-4.2# 原因分析: 网上原因有:/root下…

机器学习knnlearn5

import numpy as np from os import listdir from sklearn.neighbors import KNeighborsClassifier as kNN# 此函数用于将一个32x32的文本文件转换为一个1x1024的一维向量 def img2vector(filename):"""将32x32的文本文件转换为1x1024的向量:param filename: 要…

git revert 用法实战:撤销一个 commit 或 merge

git revert 1 区别 • 常规的 commit (使用 git commit 提交的 commit) • merge commit 2 首先构建场景 master上的代码 dev开发分支上,添加一个a标签,并commit这次提交 切到master上,再次进行改动和提交 将de…

自然语言处理|高效法律助手:AI如何解析合同条款?

引言:法律 AI 的崛起 在数字化浪潮快速发展的今天,人工智能(AI)已不再是一个陌生的概念,它正以快速发展渗透到各个领域,法律行业也不例外。从智能合同审查到法律风险预测,AI 技术为法律工作带来…

【数据分享】2000—2024年我国乡镇的逐年归一化植被指数(NDVI)数据(年最大值/Shp/Excel格式)

之前我们分享过2000-2024年我国逐年的归一化植被指数(NDVI)栅格数据,该逐年数据是取的当年月归一化植被指数(NDVI)的年最大值!另外,我们基于此年度栅格数据按照行政区划取平均值,得到…

办公网络健康监控(域名健康监控)

需求 办公室访问一些网络经常出现故障 现需要时时观察监控这些网络的健康 包含专线网等其他网络 实施 支持 SNMP 且支持 Webhook 发送报警的开源监控系统 hertzbeat:关系型数据库+时序数据库; Zabbix:关系型数据库; LibreNMS:关系型数据库; Prometheus(包含ale…

蓝桥杯 合并数列

问题描述 小明发现有很多方案可以把一个很大的正整数拆成若干个正整数的和。他采用了其中两种方案,分别将它们列为两个数组: {a₁, a₂, ..., aₙ}{b₁, b₂, ..., bₘ} 两个数组的元素和相同。 定义一次合并操作为:将某个数组中相邻的两…

【行驶证识别】批量咕嘎OCR识别行驶证照片复印件图片里的文字信息保存表格或改名字,基于QT和腾讯云api_ocr的实现方式

项目背景 在许多业务场景中,如物流管理、车辆租赁、保险理赔等,常常需要处理大量的行驶证照片复印件。手动录入行驶证上的文字信息,像车主姓名、车辆型号、车牌号码等,不仅效率低下,还容易出现人为错误。借助 OCR(光学字符识别)技术,能够自动识别行驶证图片中的文字信…

个人学习编程(3-29) leetcode刷题

最后一个单词的长度: 思路:跳过末尾的空格,可以从后向前遍历 然后再利用 while(i>0 && s[i] ! ) 可以得到字符串的长度, int lengthOfLastWord(char* s) {int length 0;int i strlen(s) - 1; //从字符串末尾开始//…

PAT甲级(Advanced Level) Practice 1028 List Sorting

原题 1028 List Sorting - PAT (Advanced Level) Practice 题目大意 输入n个学生的id、姓名、分数,再输入C表示对C列进行排序。 id:从小到大排 姓名:姓名不同时从小到大排,相同时id从小到大排 分数:不同时从小到…

UE4学习笔记 FPS游戏制作20 重写机器人和玩家死亡 切换相机和模型

定义父类中的死亡方法 在父类中定义OnDie方法,不需要实现,由子类实现各自的死亡逻辑 新建一个Die方法,处理公共的死亡逻辑 Die的实现: 以前的分离控制现在要延迟做,如果分离了控制器,就无法再获取到玩家的…

Linux信号的诞生与归宿:内核如何管理信号的生成、阻塞和递达?

个人主页:敲上瘾-CSDN博客 个人专栏:Linux学习、游戏、数据结构、c语言基础、c学习、算法 目录 一、认识信号 二、信号的产生 1.键盘输入 2.系统调用 3.系统指令 4.硬件异常 5.软件条件 三、信号的保存 1.block 2.pending 3.handler 四、信号…

DeepSeek API集成开发指南——Flask示例实践

DeepSeek API集成开发指南——Flask示例实践 序言:智能化开发新范式 DeepSeek API提供了覆盖自然语言处理、代码生成等多领域的先进AI能力。本文将以一个功能完备的Flask示例系统为载体,详解API的集成方法与最佳实践。通过本案例,开发者可快…