一些常用的linux常用的命令_linux常用命令有哪些?
zhezhongyun 2025-09-19 06:24 28 浏览
在 Linux 的世界里,命令是与系统交互的基础。掌握常用命令不仅能让你高效地管理文件、进程和网络,还能为你进一步学习系统管理和自动化打下坚实的基础。本文将深入探讨一些最常用且功能强大的 Linux 命令。
文件与目录管理
文件和目录是 Linux 系统中最基本的操作对象。以下命令能帮助你轻松驾驭它们:
ls - 列出目录内容
ls 命令用于列出指定目录下的文件和子目录。它有许多常用选项,可以改变输出的显示方式:
- ls -l: 以长格式显示文件信息,包括文件权限、所有者、组、大小、修改日期等。
 - ls -a: 显示所有文件,包括以 . 开头的隐藏文件。
 - ls -h: 以人类可读的格式显示文件大小(例如,1K, 234M, 2G)。
 - ls -R: 递归地列出子目录中的内容。
 
示例:
Bash
ls -lh # 列出当前目录下所有文件和子目录的详细信息,并以人类可读的格式显示文件大小cd - 切换目录
cd 命令用于改变当前工作目录。
- cd ~ 或 cd: 切换到用户主目录。
 - cd ..: 切换到上级目录。
 - cd -: 切换到上一个工作目录。
 
示例:
Bash
cd /var/log # 切换到 /var/log 目录pwd - 显示当前工作目录
pwd 命令会打印出当前所处的完整路径。当你迷失在文件系统中时,它能帮你迅速找到方向。
示例:
Bash
pwd # 显示当前工作目录的路径mkdir - 创建目录
mkdir 命令用于创建新的目录。
- mkdir -p: 当父目录不存在时,自动创建所需的父目录。
 
示例:
Bash
mkdir my_new_directory # 创建名为 my_new_directory 的新目录
mkdir -p projects/2025/q3 # 创建 projects, 2025, q3 三级目录rmdir - 删除空目录
rmdir 命令用于删除空的目录。如果目录不为空,则无法删除。
示例:
Bash
rmdir empty_folder # 删除名为 empty_folder 的空目录cp - 复制文件和目录
cp 命令用于复制文件或目录。
- cp -r: 递归地复制目录及其内容。
 
示例:
Bash
cp file.txt new_file.txt # 复制 file.txt 并命名为 new_file.txt
cp -r documents backup_documents # 复制 documents 目录及其所有内容到 backup_documentsmv - 移动或重命名文件和目录
mv 命令用于移动文件或目录,也可以用于重命名。
示例:
Bash
mv old_name.txt new_name.txt # 将 old_name.txt 重命名为 new_name.txt
mv file.txt /tmp/ # 将 file.txt 移动到 /tmp/ 目录rm - 删除文件和目录
rm 命令用于删除文件和目录。使用此命令时请务必小心,因为它删除的文件通常无法恢复。
- rm -f: 强制删除文件,不进行确认提示。
 - rm -r: 递归地删除目录及其内容。
 
示例:
Bash
rm useless_file.txt # 删除 useless_file.txt
rm -rf dangerous_folder # 强制删除 dangerous_folder 及其所有内容 (极度危险,慎用!)cat - 查看文件内容
cat 命令用于连接文件并打印到标准输出,最常用的是查看文本文件的内容。
示例:
Bash
cat /etc/os-release # 查看操作系统版本信息文件less 和 more - 分页查看文件内容
当文件内容很长时,less 和 more 命令可以让你分页查看,避免内容一次性刷满屏幕。less 功能更强大,支持向前和向后翻页,而 more 只能向前翻页。
示例:
Bash
less /var/log/syslog # 分页查看系统日志head 和 tail - 查看文件开头或结尾
- head: 默认显示文件的前10行。
 - tail: 默认显示文件的后10行。
 - tail -f: 实时跟踪文件末尾的更新,常用于查看日志文件。
 
示例:
Bash
head -n 5 access.log # 查看 access.log 文件的前5行
tail -f error.log # 实时查看 error.log 中新增的错误信息权限管理
Linux 是一种多用户操作系统,文件和目录的权限管理至关重要。
chmod - 改变文件权限
chmod 命令用于改变文件或目录的权限。权限可以用数字(八进制)或符号表示。
数字表示法:
- 读 (r): 4
 - 写 (w): 2
 - 执行 (x): 1
 
组合权限:
- 所有者 (owner)
 - 组 (group)
 - 其他用户 (others)
 
示例:
Bash
chmod 755 script.sh # 将 script.sh 设置为所有者可读写执行,组用户和其他用户可读执行
# 7 = 4(r) + 2(w) + 1(x)
# 5 = 4(r) + 0(w) + 1(x)chown - 改变文件所有者
chown 命令用于改变文件或目录的所有者。
示例:
Bash
chown user1 file.txt # 将 file.txt 的所有者改为 user1chgrp - 改变文件组
chgrp 命令用于改变文件或目录的所属组。
示例:
Bash
chgrp developers project_folder # 将 project_folder 的所属组改为 developers进程管理
进程是正在执行的程序实例。管理进程是系统管理员的日常任务之一。
ps - 查看进程状态
ps 命令用于查看当前系统中运行的进程。
- ps aux: 显示所有用户的进程,以及详细信息。
 - ps ef: 以树状结构显示进程之间的父子关系。
 
示例:
Bash
ps aux | grep nginx # 查找所有与 nginx 相关的进程top - 实时查看进程状态
top 命令提供了一个实时更新的进程列表,显示 CPU、内存使用情况以及每个进程的资源占用。
示例:
Bash
top # 启动 top 实时监控进程kill - 终止进程
kill 命令用于向进程发送信号,最常用的是终止进程。
- kill <PID>: 默认发送 SIGTERM 信号(请求终止)。
 - kill -9 <PID>: 发送 SIGKILL 信号(强制终止,不可被捕获或忽略)。
 
示例:
Bash
kill 12345 # 终止 PID 为 12345 的进程
kill -9 54321 # 强制终止 PID 为 54321 的进程网络工具
ping - 测试网络连通性
ping 命令用于测试网络主机之间的连通性。它通过发送 ICMP echo 请求包并等待响应来工作。
示例:
Bash
ping xxx.com # 测试与 xxx.com 的连通性ip - 显示/配置网络接口
ip 命令是 ifconfig 的现代化替代品,用于显示和配置网络接口。
- ip a: 显示所有网络接口的详细信息,包括 IP 地址。
 - ip r: 显示路由表。
 
示例:
Bash
ip a # 显示所有网络接口的 IP 地址信息ss - 显示套接字统计信息
ss 命令是 netstat 的更快、更强大的替代品,用于显示套接字统计信息。
- ss -tunlpx: 显示所有 TCP、UDP 监听端口,并显示关联的进程。
 
示例:
Bash
ss -tunlp # 列出所有监听的 TCP 和 UDP 端口压缩与解压
tar - 文件打包与解压
tar 命令是一个功能强大的归档工具,常用于将多个文件打包成一个文件,并可选地进行压缩。
- tar -cvf archive.tar files: 创建一个归档文件。
 - tar -xvf archive.tar: 解压一个归档文件。
 - tar -czvf archive.tar.gz files: 创建并使用 gzip 压缩。
 - tar -xzvf archive.tar.gz: 解压 gzip 压缩的归档文件。
 - tar -cjvf archive.tar.bz2 files: 创建并使用 bzip2 压缩。
 - tar -xjvf archive.tar.bz2: 解压 bzip2 压缩的归档文件。
 
示例:
Bash
tar -czvf my_backup.tar.gz /home/user/documents # 将 documents 目录打包并压缩为 my_backup.tar.gz
tar -xzvf my_backup.tar.gz # 解压 my_backup.tar.gzgzip / gunzip - Gzip 压缩/解压
gzip 用于压缩文件,gunzip 用于解压由 gzip 压缩的文件。
示例:
Bash
gzip my_file.txt # 压缩 my_file.txt 为 my_file.txt.gz
gunzip my_file.txt.gz # 解压 my_file.txt.gzzip / unzip - Zip 压缩/解压
zip 和 unzip 命令用于创建和提取 .zip 格式的压缩文件,这在与其他操作系统交换文件时很常见。
示例:
Bash
zip -r my_archive.zip my_folder # 将 my_folder 及其内容压缩为 my_archive.zip
unzip my_archive.zip # 解压 my_archive.zip搜索与查找
grep - 文本搜索
grep 命令用于在文件中搜索指定的文本模式。它是 Linux 中最常用的文本处理工具之一。
- grep -i: 忽略大小写。
 - grep -r: 递归搜索子目录。
 - grep -n: 显示匹配行的行号。
 - grep -v: 显示不匹配的行。
 
示例:
Bash
grep "error" /var/log/syslog # 在系统日志中查找包含 "error" 的行
grep -rn "function_name" . # 在当前目录及其子目录中递归查找 "function_name" 并显示行号find - 文件查找
find 命令用于在文件系统中查找文件和目录。它非常强大,支持多种查找条件。
- find . -name "*.log": 在当前目录及其子目录中查找所有以 .log 结尾的文件。
 - find /etc -type d -name "nginx": 在 /etc 目录下查找名为 "nginx" 的目录。
 - find /home -user user1: 查找所有者为 user1 的文件。
 
示例:
Bash
find /var/www -type f -size +1G # 在 /var/www 目录下查找所有大于 1GB 的文件系统信息
df - 查看磁盘空间使用情况
df 命令用于显示文件系统的磁盘空间使用情况。
- df -h: 以人类可读的格式显示。
 
示例:
Bash
df -h # 显示所有文件系统的磁盘使用情况du - 查看文件或目录占用空间
du 命令用于显示文件或目录的磁盘空间占用量。
- du -sh: 汇总显示指定目录的总大小,以人类可读的格式。
 
示例:
Bash
du -sh /var/log # 显示 /var/log 目录的总大小free - 查看内存使用情况
free 命令用于显示系统内存使用情况,包括物理内存和交换空间。
- free -h: 以人类可读的格式显示。
 
示例:
Bash
free -h # 显示内存使用情况uname - 查看系统信息
uname 命令用于显示系统信息,如内核名称、版本、硬件架构等。
- uname -a: 显示所有系统信息。
 
示例:
Bash
uname -a # 显示所有系统信息结论
以上只是 Linux 常用命令中的一小部分,但它们构成了与 Linux 系统高效交互的基石。掌握这些命令,并养成查阅 man 手册(例如 man ls)的习惯,将极大地提升在 Linux 环境下的工作效率。随着对这些基础命令的熟练运用,将能够更轻松地探索 Linux 的强大功能,并解决各种系统管理和开发任务。
相关推荐
- Python入门学习记录之一:变量_python怎么用变量
 - 
        
写这个,主要是对自己学习python知识的一个总结,也是加深自己的印象。变量(英文:variable),也叫标识符。在python中,变量的命名规则有以下三点:>变量名只能包含字母、数字和下划线...
 
- python变量命名规则——来自小白的总结
 - 
        
python是一个动态编译类编程语言,所以程序在运行前不需要如C语言的先行编译动作,因此也只有在程序运行过程中才能发现程序的问题。基于此,python的变量就有一定的命名规范。python作为当前热门...
 
- Python入门学习教程:第 2 章 变量与数据类型
 - 
        
2.1什么是变量?在编程中,变量就像一个存放数据的容器,它可以存储各种信息,并且这些信息可以被读取和修改。想象一下,变量就如同我们生活中的盒子,你可以把东西放进去,也可以随时拿出来看看,甚至可以换成...
 
- 绘制学术论文中的“三线表”具体指导
 - 
        
在科研过程中,大家用到最多的可能就是“三线表”。“三线表”,一般主要由三条横线构成,当然在变量名栏里也可以拆分单元格,出现更多的线。更重要的是,“三线表”也是一种数据记录规范,以“三线表”形式记录的数...
 
- Python基础语法知识--变量和数据类型
 - 
        
学习Python中的变量和数据类型至关重要,因为它们构成了Python编程的基石。以下是帮助您了解Python中的变量和数据类型的分步指南:1.变量:变量在Python中用于存储数据值。它们充...
 
- 一文搞懂 Python 中的所有标点符号
 - 
        
反引号`无任何作用。传说Python3中它被移除是因为和单引号字符'太相似。波浪号~(按位取反符号)~被称为取反或补码运算符。它放在我们想要取反的对象前面。如果放在一个整数n...
 
- Python变量类型和运算符_python中变量的含义
 - 
        
别再被小名词坑哭了:Python新手常犯的那些隐蔽错误,我用同事的真实bug拆给你看我记得有一次和同事张姐一起追查一个看似随机崩溃的脚本,最后发现罪魁祸首竟然是她把变量命名成了list。说实话...
 
- 从零开始:深入剖析 Spring Boot3 中配置文件的加载顺序
 - 
        
在当今的互联网软件开发领域,SpringBoot无疑是最为热门和广泛应用的框架之一。它以其强大的功能、便捷的开发体验,极大地提升了开发效率,成为众多开发者构建Web应用程序的首选。而在Spr...
 
- Python中下划线 ‘_’ 的用法,你知道几种
 - 
        
Python中下划线()是一个有特殊含义和用途的符号,它可以用来表示以下几种情况:1在解释器中,下划线(_)表示上一个表达式的值,可以用来进行快速计算或测试。例如:>>>2+...
 
- 解锁Shell编程:变量_shell $变量
 - 
        
引言:开启Shell编程大门Shell作为用户与Linux内核之间的桥梁,为我们提供了强大的命令行交互方式。它不仅能执行简单的文件操作、进程管理,还能通过编写脚本实现复杂的自动化任务。无论是...
 
- 一文学会Python的变量命名规则!_python的变量命名有哪些要求
 - 
        
目录1.变量的命名原则3.内置函数尽量不要做变量4.删除变量和垃圾回收机制5.结语1.变量的命名原则①由英文字母、_(下划线)、或中文开头②变量名称只能由英文字母、数字、下画线或中文字所组成。③英文字...
 
- 更可靠的Rust-语法篇-区分语句/表达式,略览if/loop/while/for
 - 
        
src/main.rs://函数定义fnadd(a:i32,b:i32)->i32{a+b//末尾表达式}fnmain(){leta:i3...
 
- C++第五课:变量的命名规则_c++中变量的命名规则
 - 
        
变量的命名不是想怎么起就怎么起的,而是有一套固定的规则的。具体规则:1.名字要合法:变量名必须是由字母、数字或下划线组成。例如:a,a1,a_1。2.开头不能是数字。例如:可以a1,但不能起1a。3....
 
- Rust编程-核心篇-不安全编程_rust安全性
 - 
        
Unsafe的必要性Rust的所有权系统和类型系统为我们提供了强大的安全保障,但在某些情况下,我们需要突破这些限制来:与C代码交互实现底层系统编程优化性能关键代码实现某些编译器无法验证的安全操作Rus...
 
- 探秘 Python 内存管理:背后的神奇机制
 - 
        
在编程的世界里,内存管理就如同幕后的精密操控者,确保程序的高效运行。Python作为一种广泛使用的编程语言,其内存管理机制既巧妙又复杂,为开发者们提供了便利的同时,也展现了强大的底层控制能力。一、P...
 
- 一周热门
 
- 最近发表
 
- 标签列表
 - 
- HTML 教程 (33)
 - HTML 简介 (35)
 - HTML 实例/测验 (32)
 - HTML 测验 (32)
 - JavaScript 和 HTML DOM 参考手册 (32)
 - HTML 拓展阅读 (30)
 - HTML文本框样式 (31)
 - HTML滚动条样式 (34)
 - HTML5 浏览器支持 (33)
 - HTML5 新元素 (33)
 - HTML5 WebSocket (30)
 - HTML5 代码规范 (32)
 - HTML5 标签 (717)
 - HTML5 标签 (已废弃) (75)
 - HTML5电子书 (32)
 - HTML5开发工具 (34)
 - HTML5小游戏源码 (34)
 - HTML5模板下载 (30)
 - HTTP 状态消息 (33)
 - HTTP 方法:GET 对比 POST (33)
 - 键盘快捷键 (35)
 - 标签 (226)
 - opacity 属性 (32)
 - transition 属性 (33)
 - 1-1. 变量声明 (31)
 
 
