Linux 命令学习记录

news2025/3/18 1:49:29

Linux 命令详解与进阶指南

Linux 是一种广泛使用的开源操作系统,掌握 Linux 命令是开发者和系统管理员的必备技能。本文将详细介绍 Linux 的常用命令,并涵盖一些高级进阶技巧,帮助你更高效地使用 Linux。


目录

  1. 基础命令
    • 文件与目录操作
    • 文本处理
    • 系统信息
    • 权限管理
  2. 进阶命令
    • 进程管理
    • 网络操作
    • 磁盘管理
    • Shell 脚本
  3. 高级技巧
    • 管道与重定向
    • 正则表达式
    • 任务调度
    • 性能监控
  4. 案例实战
    • 日志分析
    • 自动化部署
    • 服务器监控

基础命令

文件与目录操作

1. ls - 列出目录内容
ls          # 列出当前目录内容
ls -l       # 以长格式列出
ls -a       # 列出所有文件(包括隐藏文件)
ls -lh      # 以易读格式显示文件大小
2. cd - 切换目录
cd /home    # 切换到 /home 目录
cd ..       # 返回上一级目录
cd ~        # 切换到用户主目录
3. mkdir - 创建目录
mkdir dir1          # 创建目录 dir1
mkdir -p dir1/dir2  # 递归创建目录
4. rm - 删除文件或目录
rm file.txt         # 删除文件
rm -r dir1          # 递归删除目录
rm -f file.txt      # 强制删除文件
5. cp - 复制文件或目录
cp file1 file2      # 复制文件
cp -r dir1 dir2     # 递归复制目录
6. mv - 移动或重命名文件
mv file1 file2      # 重命名文件
mv file1 dir1/      # 移动文件到目录
7. touch - 创建空文件或更新文件时间戳
touch file.txt      # 创建空文件

文本处理

1. cat - 查看文件内容
cat file.txt        # 查看文件内容
cat file1 file2     # 合并多个文件
2. moreless - 分页查看文件
more file.txt       # 分页查看文件
less file.txt       # 支持上下滚动查看
3. headtail - 查看文件开头或结尾
head file.txt       # 查看文件前 10 行
tail file.txt       # 查看文件后 10 行
tail -f file.txt    # 实时查看文件新增内容
4. grep - 文本搜索
grep "pattern" file.txt         # 搜索包含 pattern 的行
grep -i "pattern" file.txt      # 忽略大小写搜索
grep -r "pattern" dir1/         # 递归搜索目录
5. sed - 流编辑器
sed 's/old/new/' file.txt       # 替换文件中的文本
sed -i 's/old/new/' file.txt    # 直接修改文件
6. awk - 文本处理工具
awk '{print $1}' file.txt       # 打印文件的第一列
awk -F: '{print $1}' /etc/passwd # 以冒号为分隔符打印第一列

系统信息

1. uname - 显示系统信息
uname -a           # 显示所有系统信息
2. df - 显示磁盘使用情况
df -h              # 以易读格式显示磁盘使用情况
3. free - 显示内存使用情况
free -h            # 以易读格式显示内存使用情况
4. top - 实时显示系统进程
top                # 显示系统进程和资源使用情况

权限管理

1. chmod - 修改文件权限
chmod 755 file.txt  # 设置文件权限为 rwxr-xr-x
chmod +x script.sh  # 添加可执行权限
2. chown - 修改文件所有者
chown user:group file.txt  # 修改文件所有者和所属组
3. sudo - 以超级用户权限执行命令
sudo apt update    # 以超级用户权限更新软件包

进阶命令

进程管理

1. ps - 显示进程状态
ps aux             # 显示所有进程
2. kill - 终止进程
kill 1234          # 终止进程 ID 为 1234 的进程
kill -9 1234       # 强制终止进程
3. nohup - 后台运行进程
nohup command &    # 后台运行命令,忽略挂断信号

网络操作

1. ping - 测试网络连接
ping google.com    # 测试与 google.com 的连接
2. ifconfig - 显示网络接口信息
ifconfig           # 显示网络接口信息
3. netstat - 显示网络状态
netstat -tuln      # 显示所有监听端口
4. ssh - 远程登录
ssh user@host      # 远程登录到主机

磁盘管理

1. fdisk - 磁盘分区工具
sudo fdisk -l      # 列出磁盘分区
2. mount - 挂载文件系统
sudo mount /dev/sdb1 /mnt  # 挂载设备到目录
3. du - 显示目录磁盘使用情况
du -sh dir1/       # 显示目录的磁盘使用情况

Shell 脚本

1. 编写 Shell 脚本
#!/bin/bash
echo "Hello, World!"
2. 执行 Shell 脚本
chmod +x script.sh
./script.sh

高级技巧

管道与重定向

1. 管道 (|)
cat file.txt | grep "pattern"  # 将 cat 的输出作为 grep 的输入
2. 重定向 (>>>)
echo "Hello" > file.txt  # 将输出重定向到文件(覆盖)
echo "World" >> file.txt # 将输出追加到文件

正则表达式

1. 基本正则表达式
grep "^start" file.txt  # 匹配以 start 开头的行
grep "end$" file.txt    # 匹配以 end 结尾的行
2. 扩展正则表达式
grep -E "pattern1|pattern2" file.txt  # 匹配 pattern1 或 pattern2

任务调度

1. cron - 定时任务
crontab -e          # 编辑定时任务
* * * * * command   # 每分钟执行一次命令
2. at - 一次性任务
at now + 5 minutes  # 5 分钟后执行任务

性能监控

1. vmstat - 显示系统性能
vmstat 1            # 每秒显示一次系统性能
2. iostat - 显示磁盘 I/O 性能
iostat 1            # 每秒显示一次磁盘 I/O 性能

案例实战

日志分析

1. 查找错误日志
grep "ERROR" /var/log/syslog
2. 统计日志行数
grep "ERROR" /var/log/syslog | wc -l

自动化部署

1. 编写部署脚本
#!/bin/bash
git pull origin master
npm install
pm2 restart app
2. 设置定时任务
crontab -e
0 * * * * /path/to/deploy.sh

服务器监控

1. 监控 CPU 使用率
top -b -n 1 | grep "Cpu(s)"
2. 监控内存使用率
free -m | grep "Mem:"

通过本文,你应该掌握了 Linux 的基础命令、进阶技巧以及一些高级应用场景。继续实践和探索,你将能够更高效地使用 Linux!

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

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

相关文章

Android之RecyclerView列表拖动排序

文章目录 前言一、效果图二、实现步骤1.xml布局2.activity代码3.adapter 总结 前言 随着需求的变化,很多地方需要加拖动改变顺序的需求,用RecyclerView就可以实现列表拖动排序,列如像朋友圈图片拖动排序,或者音乐播放器列表拖动排…

C# WPF 基础知识学习(一)

一、WPF 简介 Windows Presentation Foundation(WPF)是微软推出的一款用于构建用户界面的框架,它为开发 Windows 桌面应用程序提供了统一的编程模型、语言和框架。WPF 将用户界面的设计与业务逻辑分离开来,采用了 XAML&#xff0…

MATLAB基于ResNet18的交通标志识别系统

1. 数据准备 数据集:该数据集包含了大量标注好的交通标志图片,每类标志都有不同的样本。数据预处理:图像需要进行一些基本的预处理,如调整大小、归一化等,以适应ResNet18的输入要求。 2. 网络设计 使用MATLAB自带的…

CSS3-流星雨

1. 绘制标签 <div class"container"><span></span> </div>2. 设置div背景 在百度上搜索一幅星空的图片 <style>* {/* 初始化 */margin: 0;padding: 0;}body {/* 高度100% */height: 100vh;/* 溢出隐藏 */overflow: hidden;}.contai…

数学建模 第一节

目录​​​​​​ 前言 一 优化模型的类型 二 线性规划1 线性规划2 三 0-1规划 总结 前言 数学建模主要是将问题转化为模型&#xff0c;然后再以编程的形式输出出来 算法都知道&#xff0c;数学建模也需要用到算法&#xff0c;但是不是主要以编程形式展示&#xff0c;而是…

平方矩阵问题

Ⅰ 回字形二维数组 #include <iostream> #include <iomanip> using namespace std; int main(){int n;while(cin>>n,n){for(int i0; i<n;i){for(int j0; j<n; j){int upi, downn-i1, leftj, rightn-j1;cout<<min(min(up,down),min(left,right)…

自动化立体仓库堆垛机HMI屏幕程序施耐德HMIGXU系列 Vijeo Designer功能设计

堆垛机HMI屏幕功能概况 在自动化立体仓库堆垛机的HMI屏幕程序里,有着施耐德HMIGXU系列Vijeo Designer功能设计。此HMI程序运用标准的工程组织结构,凭借拖拽方式迅速构建人机交互界面。 其主要功能涵盖:设备参数、设备状态、手动/自动操作控制、报警显示、IO信息监控等模块…

实验- 分片上传 VS 直接上传

分片上传和直接上传是两种常见的文件上传方式。分片上传将文件分成多个小块&#xff0c;每次上传一个小块&#xff0c;可以并行处理多个分片&#xff0c;适用于大文件上传&#xff0c;减少了单个请求的大小&#xff0c;能有效避免因网络波动或上传中断导致的失败&#xff0c;并…

生活中的可靠性小案例12:类肤材质老化发粘问题

我一直觉得我买的某品牌车载吸尘器很好用&#xff0c;用了几年&#xff0c;目前性能也是杠杠的。然而它现在有个最大的问题&#xff0c;就是表面发粘了&#xff0c;用起来粘手&#xff0c;非常不舒服。 这一类问题在生活中不少见&#xff0c;尤其是一些用了类肤材质涂层的物件。…

qt 自带虚拟键盘的编译使用记录

一、windows 下编译 使用vs 命令窗口&#xff0c;分别执行&#xff1a; qmake CONFIG"lang-en_GB lang-zh_CN" nmake nmake install 如果事先没有 指定需要使用的输入法语言就进行过编译&#xff0c;则需要先 执行 nmake distclean 清理后执行 qmake 才能生效。 …

python中print函数的flush如何使用

在 Python 中&#xff0c;print 函数的 flush 参数是一个布尔值&#xff0c;默认值为 False。当设置为 True 时&#xff0c;它会强制将输出缓冲区的内容立即刷新到目标设备&#xff08;通常是控制台&#xff09;&#xff0c;而不是等待缓冲区满或者程序结束时才输出。 要注意fl…

【软考-架构】5.2、传输介质-通信方式-IP地址-子网划分

✨资料&文章更新✨ GitHub地址&#xff1a;https://github.com/tyronczt/system_architect 文章目录 传输介质网线光纤无线信道 通信方式和交换方式会考&#xff1a;交换方式 &#x1f4af;考试真题第一题第二题 IP地址表示子网划分&#x1f4af;考试真题第一题第二题 传输…

websocket学习手册及python实现简单的聊天室

概述 WebSocket 是一种网络通信协议&#xff0c;允许在单个 TCP 连接上进行全双工通信。它最核心的优势就在于实现了持久连接&#xff0c;实现了实时的数据传输。HTTP 协议有一个很大的缺点&#xff0c;通信只能由客户端发起&#xff0c;服务器返回响应后连接就会关闭&#xf…

SpringMVC (二)请求处理

目录 章节简介 一 请求处理&#xff08;初级&#xff09; eg:请求头 二 请求处理&#xff08;进阶&#xff09; eg:请求体 三 获取请求头 四 获取Cookie 五 级联封装 六 使用RequestBoby封装JSON对象 七 文件的上传 八 获取整个请求 HttpEntity 九 原生请求 Spring…

1.6、Java继承、构造方法、数组

子类可以增加字段、增加方法或覆盖父类方法&#xff0c;但继承不会删除任何字段和方法不恰当认为super 同 this 引用是类似的概念&#xff0c;其实super不是一个对象的引用&#xff0c;不能将值super赋给另一个对象变量&#xff0c;super只是一个指示 编译器调用父类方法的特殊…

通义万相 2.1 与蓝耘智算平台的深度协同,挖掘 AIGC 无限潜力并释放巨大未来价值

我的个人主页 我的专栏&#xff1a; 人工智能领域、java-数据结构、Javase、C语言&#xff0c;希望能帮助到大家&#xff01;&#xff01;&#xff01; 点赞&#x1f44d;收藏❤ 引言&#xff1a;AIGC 浪潮下的新机遇 在当今数字化飞速发展的时代&#xff0c;人工智能生成内容&…

专题|Python贝叶斯金融数据应用实例合集:随机波动率SV模型、逻辑回归、参数更新、绩效比较BEST分析亚马逊股票、普尔指数...

原文链接&#xff1a;https://tecdat.cn/?p41020 本专题合集系统梳理了贝叶斯方法在金融数据分析与分类建模中的前沿应用。合集聚焦于PyMC3概率编程框架&#xff0c;深度探讨了共轭先验参数更新、贝叶斯逻辑回归、贝叶斯夏普比率等核心算法在实际场景中的落地实践&#xff08;…

Linux调度器 --- 负载均衡的存在的问题

文章目录 前言一、简介二、Linux 调度器2.1 在单核系统上&#xff0c;CFS 非常简单2.2 在多核系统上&#xff0c;CFS 变得非常复杂2.2.1 负载均衡算法2.2.2 优化措施 三、Linux调度器负载均衡的存在的问题3.1 组负载不均衡问题&#xff08;Group Imbalance Bug&#xff09;3.2 …

从零开始用AI开发游戏(三)背景故事

《迷域回响》背景故事 第一章&#xff1a;失落的符文纪元 在远古的“艾瑟兰”大陆&#xff0c;掌握空间魔法的「筑界者文明」曾建造了连通万界的回响迷宫——这座迷宫既是试炼场&#xff0c;也是囚笼。文明巅峰时期&#xff0c;筑界者将禁忌知识刻入虚空符文&#xff0c;嵌于…

IXTUR气控永磁铁:以高精度气控和稳定磁场,为机器人应用提供稳定抓取力

在现代工业生产和物流领域&#xff0c;物料的抓取与搬运是影响生产效率和成本控制的重要环节。传统夹爪在面对不同材质、形状和重量的物体时&#xff0c;常常存在适应性差、抓取不稳定、操作复杂等问题&#xff0c;导致生产流程中频繁出现停机调整&#xff0c;增加了人工干预成…