Linux 常用命令与实战教程

server/2025/2/9 9:44:53/

Linux 常用命令与实战教程

引言

Linux 是一个强大的开源操作系统,广泛应用于服务器、嵌入式系统、个人计算机等多个领域。其灵活性、稳定性和安全性使其成为开发人员和运维工程师的首选操作系统之一。对于开发者而言,熟练掌握 Linux 命令行不仅能提高工作效率,还能帮助更好地进行系统管理、调试与性能优化。


1. 基本文件操作命令

Linux 文件系统是基于树状结构的,因此文件的管理是每个 Linux 用户的日常任务之一。以下是一些常见的文件操作命令:

1.1 查看当前目录下的文件
ls                # 列出当前目录下的文件和文件夹
ls -l             # 显示详细信息,包括文件权限、所有者、文件大小等
ls -a             # 显示所有文件,包括隐藏文件(以 . 开头的文件)
ls -lh            # 显示文件大小,并以可读的格式(如 KB、MB)显示
1.2 切换目录
cd /path/to/dir   # 切换到指定目录
cd ~              # 切换到当前用户的主目录
cd ..             # 切换到上一级目录
cd -              # 切换到上一次访问的目录
1.3 创建与删除文件
touch filename    # 创建一个空文件
echo "Hello World" > file.txt    # 创建文件并写入内容
cat file.txt      # 查看文件内容
rm file.txt       # 删除文件
1.4 创建与删除目录
mkdir newdir      # 创建一个新目录
rmdir olddir      # 删除一个空目录
rm -r dirname     # 删除非空目录及其中所有内容

2. 文件权限管理

在 Linux 中,每个文件都有相关的权限控制,包括对文件的读取、写入和执行权限。

2.1 查看文件权限
ls -l filename    # 查看文件权限(rwx表示读、写、执行权限)
2.2 改变文件权限
chmod u+x file.txt   # 给文件所有者添加执行权限
chmod 755 file.txt   # 设置文件权限为 rwx r-x r-x
chmod u+w file.txt   # 给文件所有者添加写权限
2.3 改变文件所有者
chown user:group file.txt  # 改变文件的所有者和所属组
chown user file.txt        # 只改变文件的所有者
chgrp group file.txt       # 改变文件的所属组

3. 进程管理命令

Linux 的进程管理非常重要,尤其在系统性能优化和资源管理中。下面是一些常用的进程管理命令:

3.1 查看系统中的进程
ps                 # 查看当前用户的进程
ps aux             # 查看所有用户的所有进程
top                # 动态查看系统进程
htop               # 更友好的交互式进程查看工具(需要安装)
3.2 杀死进程
kill PID           # 根据进程 ID 杀死进程
kill -9 PID        # 强制杀死进程(使用信号 9)
3.3 查找并杀死占用高 CPU 或内存的进程
top                # 实时查看 CPU 使用情况,并按下 'P' 或 'M' 进行排序
kill $(ps aux --sort=-%cpu | awk 'NR==2 {print $2}')  # 杀死占用最高 CPU 的进程

4. 文件查找与文本处理

Linux 提供了一些强大的命令用于文件查找和文本处理,这些命令在开发、日志分析等工作中非常有用。

4.1 查找文件
find /path/to/dir -name "*.txt"    # 查找指定目录下所有的 .txt 文件
find / -type f -name "file.txt"    # 从根目录开始查找指定文件
4.2 文本处理命令
cat file.txt        # 显示文件内容
head file.txt       # 显示文件的前10行
tail file.txt       # 显示文件的后10行
grep "pattern" file.txt  # 查找文件中包含特定模式的行
grep -r "pattern" /path/to/dir  # 递归查找目录下的文件
4.3 使用管道和重定向
cat file.txt | grep "pattern"     # 将文件内容通过管道传给 grep 进行搜索
ls | sort                        # 对目录中的文件列表进行排序
echo "Hello, Linux" > newfile.txt  # 将文本输出到文件中
4.4 其他文本处理命令
awk '{print $1, $2}' file.txt      # 使用 AWK 打印文件中的前两列
sed 's/old/new/g' file.txt         # 使用 sed 替换文件中的文本
sort file.txt                     # 对文件内容进行排序

5. 系统监控与性能优化

Linux 提供了多个命令用于监控系统的状态和性能,这对于运维工作至关重要。

5.1 查看系统负载
uptime                   # 查看系统的当前时间、运行时间、负载情况
top                      # 查看当前系统的资源使用情况
free -h                  # 查看系统的内存使用情况
df -h                    # 查看磁盘使用情况
iostat                   # 查看磁盘 I/O 性能
5.2 查看网络状态
ifconfig                 # 查看网络接口的配置信息
ip a                     # 查看网络接口的详细信息
netstat -tuln            # 查看当前开放的端口
ss -tuln                 # 查看当前网络连接信息

6. 包管理与软件安装

Linux 系统中的包管理工具使得安装、更新和卸载软件变得非常简单。以下是一些常见的包管理命令:

6.1 Debian/Ubuntu 系统(apt)
sudo apt update            # 更新软件包列表
sudo apt upgrade           # 更新所有已安装的软件包
sudo apt install package   # 安装指定的软件包
sudo apt remove package    # 卸载指定的软件包
6.2 RedHat/CentOS 系统(yum)
sudo yum update            # 更新所有软件包
sudo yum install package   # 安装指定的软件包
sudo yum remove package    # 卸载指定的软件包
6.3 使用 Snap 或 Flatpak 安装软件
sudo snap install package  # 使用 Snap 安装软件包
flatpak install package    # 使用 Flatpak 安装软件包

结语

掌握 Linux 命令行是每个开发者和系统管理员的必备技能。通过本篇文章介绍的一些基本命令,您应该能够更有效地进行日常的文件管理、进程控制、文本处理和系统监控等工作。Linux 的强大之处在于其灵活性和可扩展性,只要你愿意深入学习,你可以发掘出更多有用的命令和工具,极大地提升自己的生产力。

希望本文对你在使用 Linux 的过程中有所帮助,如果你有更多的命令行技巧或问题,欢迎留言讨论!



http://www.ppmy.cn/server/166189.html

相关文章

Python-基于PyQt5,Pillow,pathilb,imageio,moviepy,sys的GIF(动图)制作工具(进阶版)

前言:在抖音,快手等社交平台上,我们常常见到各种各样的GIF动画。在各大评论区里面,GIF图片以其短小精悍、生动有趣的特点,被广泛用于分享各种有趣的场景、搞笑的瞬间、精彩的动作等,能够快速吸引我们的注意…

DeepSeek:开启本地化 AI 大模型应用新时代

DeepSeek 强大的性能表现数据安全与隐私保障灵活定制与个性化应用易于本地化部署 在人工智能飞速发展的当下,大语言模型已成为推动各领域创新变革的核心力量。DeepSeek 作为一款备受瞩目的大模型,以其卓越的性能和独特的优势,在 AI 领域崭露头…

【人工智能】解码语言之谜:使用Python构建神经机器翻译系统

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 神经机器翻译(NMT)是近年来机器翻译领域的一项重大突破。它利用深度学习模型,特别是循环神经网络(RNN)和Transformer网络,以端到端的…

手写一个C++ Android Binder服务及源码分析

手写一个C Android Binder服务及源码分析 前言一、 基于C语言编写Android Binder跨进程通信Demo总结及改进二、C语言编写自己的Binder服务Demo1. binder服务demo功能介绍2. binder服务demo代码结构图3. binder服务demo代码实现3.1 IHelloService.h代码实现3.2 BnHelloService.c…

Python 数据挖掘与机器学习

模块一:Python编程 Python编程入门 1、Python环境搭建 2、如何选择Python编辑器? 3、Python基础 4、常见的错误与程序调试 5、第三方模块的安装与使用 6、文件读写(I/O) Python进阶与提高 1、Numpy模块库 2、Pandas模块…

本地化部署 AI 的第一步,认识和使用 ollama

Ollama 是什么? Ollama 是一个本地运行 AI 大模型的工具,让你在自己的电脑上使用像 ChatGPT 这样的 AI,而 不需要联网,也不需要强大的服务器。 它有什么用? 如果你想在电脑上运行 AI 聊天机器人、写作助手、代码助手…

Python中3个与众不同的运算符 :=海象 ->箭头 //地板除法运算符

在python中,有一些和其他编程语言不太一样的运算符,今天就给大家介绍几种。 1. 海象(walrus)运算符 : 这个运算符用来分配值并同时返回变量 (a : 5) print(a) # 5 它还允许我们在许多情况下避免重复语句。我们可以在表达式的…

23.PPT:校摄影社团-摄影比赛作品【5】

目录 NO12345​ NO6 NO7/8/9/10​ 单元格背景填充表格背景填充文本框背景填充幻灯片背景格式设置添加考生文件夹下的版式 NO12345 插入幻灯片和放入图片☞快速:插入→相册→新建相册→文件→图片版式→相框形状→调整边框宽度左下角背景图片:视图→…