当前位置: 首页 > news >正文

Linux 基本命令整理

🐧 Linux 基本命令整理

为了方便初学者快速掌握 Linux 常用命令,以下是经过分类整理的核心命令及用法说明。

📂 目录操作与文件管理

pwd

  • 核心功能:打印当前工作目录的绝对路径,明确用户所在位置。

  • 实操示例

pwd  # 输出示例:/home/user/documents

ls

  • 核心功能:列出指定目录中的文件和子目录(默认显示当前目录)。

  • 高频选项

    • -l:长格式显示,包含权限(如 -rw-r–r–)、所有者、大小、修改时间等详细信息。
    • -a:显示所有文件,包括 .bashrc 等隐藏文件(以 . 开头的文件)。
    • -A:显示所有文件,但排除 .(当前目录)和 …(上级目录)。
    • -d:仅显示目录自身属性,例如 ls -ld /etc 查看 /etc 目录的权限。
    • -h:以人类可读单位(K、M、G)显示文件大小,如 2.5M 而非 2621440 字节。
    • -t:按修改时间排序(最新文件在前),结合 -r 可反向排序(最旧文件在前)。
    • -S:按文件大小排序(从大到小),配合 -h 更直观。

du

  • 核心功能:查看文件或目录占用的磁盘空间。

  • 实用选项

    • -a:显示所有文件(包括子文件)的空间占用,默认仅显示目录。
    • -h:以 K、M、G 为单位显示(如 1.2G)。
    • -s:仅统计总大小,不显示子项详情,例如 du -sh /var/log 查看日志目录总占用。

mkdir

  • 核心功能:创建新目录。

  • 关键选项

    • -p:递归创建多层目录,无需手动逐级创建。

示例:mkdir -p /tmp/project/{src,docs,tests} 一次性创建项目所需的三级目录结构。

touch

  • 核心功能

    • 快速创建空文件(若文件不存在)。
    • 更新已有文件的时间戳(访问时间和修改时间)。
  • 批量操作:touch note_{1…5}.txt 一次性创建 note_1.txt 到 note_5.txt 五个文件。

ln

  • 核心功能:创建文件 / 目录的链接(类似快捷方式)。

  • 两种链接类型

    • 硬链接(无选项):
      • 仅支持文件,不支持目录。
      • 源文件删除后,硬链接仍可访问内容(共享 inode)。

示例:ln /etc/hosts hosts-hard

    • 软链接(-s 选项):
      • 支持文件和目录,仅记录源路径。
      • 源文件删除后,软链接失效(显示 broken link)。

示例:ln -s /usr/local/bin/python3 python

cp

  • 核心功能:复制文件或目录。

  • 必知选项

    • -r:递归复制目录(复制目录时必须使用),例如 cp -r /home/user/pics /backup。
    • -i:覆盖文件前提示确认(避免误操作),如 cp -i file.txt /tmp。
    • -p:保留源文件的权限、修改时间等属性,适用于备份场景。

rm

  • 核心功能:删除文件或目录(谨慎使用!)。

  • 重要选项

    • -r:递归删除目录及所有内容,例如 rm -r old_project。
    • -f:强制删除,不提示确认(风险较高,建议新手慎用)。
    • -i:删除前逐一提示,适合重要文件操作。
  • ⚠️ 警告:rm -rf / 会删除系统所有文件,绝对禁止执行!

mv

  • 核心功能

    • 移动文件 / 目录到新位置,例如 mv report.pdf /tmp。
    • 重命名文件 / 目录(同一目录下),例如 mv oldname.txt newname.txt。

🔧 别名管理

alias

  • 核心功能:为常用命令创建简化别名,提高效率。

示例:alias ll=‘ls -lha’ 以后输入 ll 即可执行 ls -lha。

unalias

  • 核心功能:删除已创建的别名,例如 unalias ll 取消 ll 别名。

永久生效设置

  1. 编辑用户配置文件:
vi ~/.bashrc  # 或 ~/.bash_profile
  1. 在文件中添加别名(如 alias cls=‘clear’)。

  2. 使配置生效:

source ~/.bashrc  # 无需重启终端即可生效

🔍 文件查找与搜索

find

  • 核心功能:在指定目录下递归查找文件 / 目录,支持多条件筛选。

  • 常用筛选条件

    • -name “*.log”:按文件名查找(区分大小写),如查找所有 .log 日志文件。
    • -iname “readme”:不区分大小写查找(匹配 ReadMe、README 等)。
    • -size +100M:查找大于 100M 的文件(-100M 为小于,100M 为等于)。
    • -user john:查找属于用户 john 的文件。
    • -type f:仅查找普通文件(d 为目录,l 为链接文件)。
  • 组合操作:查找后直接执行命令(如删除):

find /tmp -name "*.tmp" -type f -mtime +7 -exec rm -f {} \;# 含义:删除 /tmp 下7天前的 .tmp 临时文件

📦 挂载管理

mount

  • 核心功能:将磁盘分区、U 盘等存储设备挂载到目录(挂载点),使其可访问。

示例:mount /dev/sdb1 /mnt/usb 将 U 盘挂载到 /mnt/usb。

  • 常用选项:-t ext4 指定文件系统类型(如 ext4、ntfs)。

umount

  • 核心功能:卸载已挂载的设备,例如 umount /mnt/usb 安全移除 U 盘。

📄 文件内容查看

cat

  • 核心功能:一次性显示文件全部内容(适合小文件),例如 cat /etc/hostname 查看主机名。

more 与 less

  • 共同点:分页查看大文件内容(避免内容刷屏)。

  • 差异点

    • more:仅支持向下翻页(空格翻页,b 键回退),适合简单浏览。
    • less:支持上下翻页、搜索(输入 /关键词 查找),功能更强大,推荐优先使用。

head 与 tail

  • head -n 5 file.txt:查看文件前 5 行(默认前 10 行)。

  • tail -n 5 file.txt:查看文件后 5 行(默认后 10 行)。

  • tail -f /var/log/syslog:实时跟踪日志新增内容(常用于监控系统或应用日志)。

🔠 文本统计与过滤

wc

  • 核心功能:统计文件的行数、单词数、字节数。

  • 常用组合

    • wc -l file.txt:统计行数(常用于查看日志条数)。
    • wc -w README.md:统计单词数(以空格分隔)。

grep

  • 核心功能:在文本中筛选含指定关键词的行(强大的文本过滤工具)。

  • 实用选项

    • -i:忽略大小写,如 grep -i “error” log.txt 匹配 Error、ERROR 等。
    • -v:反向筛选(显示不含关键词的行),如 grep -v “^#” config.ini 过滤注释行。
    • ^ 与 $:匹配行首 / 行尾,例如 grep “^root” /etc/passwd 查找以 root 开头的行。

🗜️ 压缩与归档

gzip 与 gunzip

  • 功能:压缩 / 解压 .gz 格式文件(不支持目录)。

    • 压缩:gzip data.txt → 生成 data.txt.gz(原文件删除)。
    • 解压:gunzip data.txt.gz → 恢复为 data.txt。

bzip2 与 bunzip2

  • 功能:压缩 / 解压 .bz2 格式文件(压缩率通常高于 gzip)。

    • 压缩:bzip2 report.pdf → 生成 report.pdf.bz2。
    • 解压:bunzip2 report.pdf.bz2 → 恢复为 report.pdf。

tar(归档 + 压缩)

  • 核心功能:打包目录并压缩,支持 .tar.gz(常用)、.tar.bz2 等格式。

  • 压缩命令

tar -czvf backup.tar.gz /home/docs  # 打包并压缩为 .tar.gz 格式tar -cjvf data.tar.bz2 /var/log     # 打包并压缩为 .tar.bz2 格式
  • 解压命令
tar -xzvf backup.tar.gz -C /tmp  # 解压到 /tmp 目录tar -xjvf data.tar.bz2           # 解压到当前目录
  • 选项说明:

    • -c:创建归档;-x:提取文件;-z:用 gzip 压缩;-j:用 bzip2 压缩;-v:显示过程;-f:指定文件名。

🖥️ 系统信息与管理

时间管理

  • date:查看当前时间,date -s “2025-01-01 12:00” 手动修改系统时间。

  • hwclock -w:将系统时间同步到硬件时钟(避免重启后时间错乱)。

历史命令

  • history:显示执行过的命令记录(默认保存 1000 条)。

  • 快捷执行:!123 执行第 123 条命令,!ls 执行最近一次 ls 命令。

系统信息

  • uname -r:查看内核版本(如 5.15.0-78-generic)。

  • hostname:查看主机名,hostnamectl set-hostname server01 修改主机名。

  • ip a:查看所有网络接口的 IP 地址(替代老旧的 ifconfig)。

关机与重启

  • shutdown -h now 或 poweroff:立即关机。

  • shutdown -r now 或 reboot:立即重启。

  • shutdown -r +30 “系统将在30分钟后重启”:定时重启并发送提示消息。

通过上述命令的组合使用,可满足 Linux 日常操作的大部分需求。建议结合实际场景多练习,逐步熟悉命令的灵活应用。

http://www.lryc.cn/news/598425.html

相关文章:

  • #来昇腾学AI 【十天成长计划】大模型LLM Prompt初级班
  • 详解力扣高频 SQL 50 题-1757.可回收且低脂的产品【入门】
  • 保障工业核心命脉:深度解读工业交换机QoS的“智能流量治理”之道
  • docker设置字体及时间,映射到宿主机上
  • rustfs/rustfs基于 Rust 的高性能分布式存储系统
  • 数字系统自动设计:从C++到门级网表
  • EXCEL——INDEX和MATCH傻傻分不清?
  • 基于QT(C++)实现(图形界面)选课管理系统
  • 网易大模型算法面经总结第一篇
  • 【News】同为科技亮相首届气象经济博览会
  • Qt 元对象系统(Meta-Object System)解析
  • 【C#补全计划:类和对象(六)】
  • 【Linux基础知识系列】第六十三篇 - 文件编辑器基础:vim
  • Windows11 本地安装docker Desktop 部署dify 拉取镜像报错
  • 告别下载中断:深入解析Tomcat JSP中的“远程主机强迫关闭连接”与“软件中止连接”
  • BI 系统数据看板全解析:让数据可视化驱动业务决策
  • k8s之ingress定义https访问方式
  • 使用Claude Code从零到一打造一个现代化的GitHub Star项目管理器
  • QT项目-仿QQ音乐的音乐播放器(第二节)
  • 【初识数据结构】CS61B 中的归并排序和选择排序
  • [网安工具] 自动化威胁检测工具 —— D 盾 · 使用手册
  • kubernetes集群中部署CoreDNS服务
  • OceanBase 4.3.5 解析:DDL性能诊断
  • 爆肝整理,性能测试详细汇总,从0到1打通(二)
  • 基于深度学习的胸部 X 光图像肺炎分类系统(三)
  • 在 OceanBase 中,使用 TO_CHAR 函数 直接转换日期格式,简洁高效的解决方案
  • 深入理解 eMMC RPMB 与 OP-TEE 在 Linux 系统中的应用开发
  • 使用宝塔面板搭建 PHP 环境开发一个简单的 PHP 例子
  • 解决VSCode无法加载Json架构问题
  • 《计算机网络》实验报告八 加密、数字签名与证书