Linux 命令学习记录

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.rhkb.cn/news/34278.html

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

相关文章

基于PySide6与CATIA Automation的批量截图处理系统开发实践

引言 本文完整实现了基于PySide6 GUI框架与CATIA Automation技术的批量截图处理系统。系统支持对CATIA文件(.CATPart/.CATProduct)的自动化截图、图像优化及批量导出,通过模块化架构设计实现了超过200%的效率提升。本文将从技术架构、核心算…

【PyQt5】【Visual Studio】环境配置

前言 最近爱上搞软件编程,今天我就来教学如何进行Python软件编程PyQt5 下载工具 编程环境配置 Visual Studio Python下载最新版本就行 下载完之后呢,简单配置一下环境,Visual Studio的Python环境配置教程有很多可以自己在网上找 我这有Py…

uniapp+vue实现购物车的左滑删除功能

左滑删除 删除功能利用透明的改变在显示删除按钮实现思路代码效果展示 利用scroll滑动容器来实现代码实现效果展示 我们在移动端的电商平台中,一般都是左滑后然后删除按钮出现,用户可以点击删除按钮来进行该商品的删除,这里我分享两种方法来达…

CSSHTML新特性

HTML5 新特性探秘 在 Web 开发的不断演进中,HTML5 带来了一系列令人振奋的新特性,极大地提升了网页的功能和用户体验。今天,我们就来深入探究一下这些新特性。 语义化标签:让网页结构更清晰 语义化标签是 HTML5 的一大亮点。在…

网络爬虫【简介】

我叫补三补四,很高兴见到大家,欢迎一起学习交流和进步 今天来讲一讲爬虫 一、网络爬虫的定义 网络爬虫(Web Crawler),又称为网络蜘蛛、网络机器人等,是一种按照一定规则自动抓取互联网信息的程序或脚本。它…

数字隔离器,如何提升储能系统的安全与效能?

随着全球对光伏、风电等可再生能源需求的持续增长,在全球能源转型的浪潮中,储能技术凭借着可平衡能源供需、提高能源利用效率等优势,已成为实现 “双碳” 目标的核心支撑。据国家能源局公布数据显示,截至2024年底,我国…

AI玩Flappy Bird || 基于Q-Learning和DQN的机器学习

一、游戏介绍 Flappy Bird 游戏需要玩家控制一只小鸟越过管道障碍物。玩家只可以进行“跳跃”或者“不操作”两种操作,即点或不点。点则让小鸟上升一段距离,不点小鸟继续下降。若小鸟碰到障碍物或地面,则游戏失败。 本项目目的是开发一个深层…

【Linux内核系列】:文件系统收尾以及软硬链接详解

🔥 本文专栏:Linux 🌸作者主页:努力努力再努力wz 💪 今日博客励志语录: 世界上只有一种个人英雄主义,那么就是面对生活的种种失败却依然热爱着生活 内容回顾 那么在之前的学习中,我们…

【eNSP实战】三层交换机使用ACL实现网络安全

拓图 要求: vlan1可以访问Internetvlan2和vlan3不能访问Internet和vlan1vlan2和vlan3之间可以互相访问PC配置如图所示,这里不展示 LSW1接口vlan配置 vlan batch 10 20 30 # interface Vlanif1ip address 192.168.40.2 255.255.255.0 # interface Vla…

Trae与Builder模式初体验

说明 下载的国际版:https://www.trae.ai/ 建议 要选新模型 效果 还是挺不错的,遇到问题反馈一下,AI就帮忙解决了,真是动动嘴(打打字就行了),做些小的原型效果或演示Demo很方便呀&#xff…

Canoe Panel常用控件

文章目录 一、Panel 中控件分类1. 指示类控件2. 功能类控件3. 信号值交互类控件4. 其他类控件 二、控件使用方法1. Group Box 控件2. Input/Output Box控件3. Static Text控件4. Button控件5. Switch/Indicator 控件 提示:Button 和 Switch 的区别参考 一、Panel 中…

睡不着运动锻炼贴士

在快节奏的现代生活中,失眠似乎已成为许多人的“夜间伴侣”。夜晚辗转反侧,白天精神不振,这样的恶性循环让许多人苦不堪言。其实,除了调整作息和饮食习惯,适当的运动也是改善睡眠的一剂良药。今天,就让我们…

java数据结构(复杂度)

一.时间复杂度和空间复杂度 1.时间复杂度 衡量一个程序好坏的标准,除了能处理各种异常,还有就是时间效率,当然,对于一些配置好的电脑数据处理起来就是比配置低的高,但从后期发展来看,当数据量足够庞大时&…

NAT和NAPT的介绍

一、NAT的介绍以及作用 二、NAPT的介绍以及作用 三、NAT vs NAPT 一、NAT的介绍以及作用 1.1 NAT的介绍 NAT(Network Address Translation)是一种广泛应用于互联网的技术,主要用于解决IPv4地址耗尽问题,同时提供网络安全和网络…

VSCode通过SSH免密远程登录Windows服务器

系列 1.1 VSCode通过SSH远程登录Windows服务器 1.2 VSCode通过SSH免密远程登录Windows服务器 文章目录 系列1 准备工作2 本地电脑配置2.1 生成密钥2.2 VS Code配置密钥 3. 服务端配置3.1 配置SSH服务器sshd_config3.2 复制公钥3.3 配置权限(常见问题)3.…

大模型训练全流程深度解析

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。https://www.captainbed.cn/north 文章目录 1. 大模型训练概览1.1 训练流程总览1.2 关键技术指标 2. 数据准备2.1 数据收集与清洗2.2 数据…

export、export default 和 module.exports 深度解析

文章目录 1. 模块系统概述1.1 模块系统对比1.2 模块加载流程 2. ES Modules2.1 export 使用2.2 export default 使用2.3 混合使用 3. CommonJS3.1 module.exports 使用3.2 exports 使用 4. 对比分析4.1 语法对比4.2 使用场景 5. 互操作性5.1 ES Modules 中使用 CommonJS5.2 Com…

AI芯片设计

目的:未来的时代,一定会是AI的时代,那么,AI时代的三个重要组成部分,我要参与其中之一! 参考视频:AI芯片设计第一讲_哔哩哔哩_bilibili 端处理 云端

动手学深度学习:CNN和LeNet

前言 该篇文章记述从零如何实现CNN,以及LeNet对于之前数据集分类的提升效果。 从零实现卷积核 import torch def conv2d(X,k):h,wk.shapeYtorch.zeros((X.shape[0]-h1,X.shape[1]-w1))for i in range(Y.shape[0]):for j in range(Y.shape[1]):Y[i,j](X[i:ih,j:jw…

【开源代码解读】AI检索系统R1-Searcher通过强化学习RL激励大模型LLM的搜索能力

关于R1-Searcher的报告: 第一章:引言 - AI检索系统的技术演进与R1-Searcher的创新定位 1.1 信息检索技术的范式转移 在数字化时代爆发式增长的数据洪流中,信息检索系统正经历从传统关键词匹配到语义理解驱动的根本性变革。根据IDC的统计…