Linux 常用命令大全:从入门到精通

Linux 是一个功能强大、灵活且开源的操作系统,广泛应用于服务器、嵌入式系统和开发环境。掌握常用的 Linux 命令是使用和管理 Linux 系统的基础。下面我将从多个类别详细讲解 Linux 中最常用的命令,并附上示例和说明。


一、文件与目录操作

1. ls --- 列出目录内容

bash 复制代码
ls                # 列出当前目录文件
ls -l             # 详细列表(权限、所有者、大小、修改时间等)
ls -a             # 显示隐藏文件(以 . 开头)
ls -lh            # 以人类可读格式显示文件大小(如 KB、MB)

2. cd --- 切换目录

bash 复制代码
cd /home/user     # 进入指定目录
cd ..             # 返回上一级目录
cd ~              # 回到用户主目录
cd -              # 切换到上一次所在的目录

3. pwd --- 显示当前工作目录

bash 复制代码
pwd

4. mkdir --- 创建目录

bash 复制代码
mkdir dir1                # 创建一个目录
mkdir -p dir1/dir2/dir3   # 递归创建多级目录

5. rmdir / rm --- 删除目录或文件

bash 复制代码
rmdir empty_dir           # 删除空目录
rm file.txt               # 删除文件
rm -r dir                 # 递归删除目录及其内容(谨慎使用!)
rm -f file.txt            # 强制删除,不提示确认

6. cp --- 复制文件或目录

bash 复制代码
cp file1.txt file2.txt          # 复制文件
cp -r dir1 dir2                 # 递归复制整个目录

7. mv --- 移动或重命名文件/目录

bash 复制代码
mv old.txt new.txt        # 重命名
mv file.txt /tmp/         # 移动文件到 /tmp 目录

8. touch --- 创建空文件或更新文件时间戳

bash 复制代码
touch newfile.txt

二、文件查看与编辑

1. cat --- 查看文件内容(适合小文件)

bash 复制代码
cat file.txt
cat file1.txt file2.txt > combined.txt  # 合并文件

2. more / less --- 分页查看文件(适合大文件)

bash 复制代码
less largefile.log   # 支持上下滚动,按 q 退出
more file.txt        # 只能向下翻页

3. head / tail --- 查看文件开头或结尾

bash 复制代码
head -n 10 file.txt   # 显示前10行
tail -n 20 file.log   # 显示最后20行
tail -f /var/log/syslog  # 实时监控日志文件(常用!)

4. nano / vim --- 文本编辑器

bash 复制代码
nano myfile.txt       # 简单易用的编辑器
vim myfile.txt        # 功能强大但需学习(按 i 进入编辑,:wq 保存退出)

三、系统信息与管理

1. uname --- 查看系统信息

bash 复制代码
uname -a              # 显示内核版本、主机名、架构等

2. df --- 查看磁盘空间使用情况

bash 复制代码
df -h                 # 以人类可读格式显示(GB、MB)

3. du --- 查看目录或文件占用空间

bash 复制代码
du -sh /home/user     # 显示总大小(-s 汇总,-h 可读)
du -h --max-depth=1   # 查看当前目录下各子目录大小

4. top / htop --- 查看进程和资源使用

bash 复制代码
top                   # 实时显示 CPU、内存、进程
htop                  # 更友好的交互式进程查看器(需安装)

5. ps --- 查看当前进程

bash 复制代码
ps aux                # 显示所有进程详细信息
ps -ef | grep nginx   # 查找特定进程

6. kill / pkill --- 终止进程

bash 复制代码
kill 1234             # 终止 PID 为 1234 的进程
pkill firefox         # 按进程名终止
kill -9 1234          # 强制终止(慎用)

7. free --- 查看内存使用

bash 复制代码
free -h               # 以可读格式显示内存和交换空间

8. uptime --- 系统运行时间与负载

bash 复制代码
uptime

四、网络相关命令

1. ping --- 测试网络连通性

bash 复制代码
ping google.com

2. ifconfig / ip --- 查看或配置网络接口

bash 复制代码
ip addr show          # 推荐使用 ip 命令(ifconfig 已逐渐淘汰)
ifconfig              # 旧命令,部分系统需安装 net-tools

3. netstat / ss --- 查看网络连接和端口

bash 复制代码
ss -tuln              # 查看监听的 TCP/UDP 端口(推荐)
netstat -tuln         # 传统方式(部分系统需安装)

4. curl / wget --- 下载文件或测试 HTTP 请求

bash 复制代码
curl https://example.com
wget https://example.com/file.zip

5. ssh --- 远程登录

bash 复制代码
ssh user@192.168.1.100

五、权限与用户管理

1. chmod --- 修改文件权限

bash 复制代码
chmod 755 script.sh        # 数字方式(r=4, w=2, x=1)
chmod +x script.sh         # 添加执行权限
chmod u+x,g-w file.txt     # 用户加执行,组去掉写

2. chown --- 修改文件所有者

bash 复制代码
chown user:group file.txt
chown -R user:group dir/   # 递归修改

3. useradd / userdel --- 添加/删除用户

bash 复制代码
sudo useradd -m alice
sudo userdel -r alice      # -r 同时删除家目录

4. passwd --- 修改密码

bash 复制代码
passwd                    # 修改当前用户密码
sudo passwd alice         # 修改其他用户密码

六、压缩与归档

1. tar --- 打包和解包

bash 复制代码
tar -cvf archive.tar dir/        # 打包
tar -xvf archive.tar             # 解包
tar -czvf archive.tar.gz dir/    # 打包并 gzip 压缩
tar -xzvf archive.tar.gz         # 解压 gzip 压缩包

2. gzip / gunzip --- 压缩/解压 .gz 文件

bash 复制代码
gzip file.txt        # 生成 file.txt.gz
gunzip file.txt.gz

3. zip / unzip

bash 复制代码
zip -r archive.zip dir/
unzip archive.zip

七、查找与过滤

1. find --- 查找文件

bash 复制代码
find /home -name "*.log"        # 按名称查找
find . -type f -mtime -7        # 查找7天内修改过的文件

2. grep --- 文本搜索

bash 复制代码
grep "error" /var/log/syslog
grep -r "TODO" ./               # 递归搜索目录
grep -i "Error" file.txt        # 忽略大小写

3. which / whereis --- 查找命令位置

bash 复制代码
which python
whereis nginx

八、管道与重定向

  • >:覆盖写入文件
  • >>:追加写入文件
  • |:将前一个命令的输出作为后一个命令的输入
bash 复制代码
ls -l > filelist.txt          # 保存目录列表到文件
echo "hello" >> log.txt       # 追加内容
ps aux | grep ssh             # 查找 ssh 相关进程
cat access.log | grep 404 | wc -l  # 统计 404 错误数量

九、其他实用命令

  • history:查看命令历史
  • alias:设置命令别名(如 alias ll='ls -l'
  • man:查看命令手册(如 man ls
  • sudo:以超级用户权限执行命令
  • crontab -e:编辑定时任务
  • date:显示或设置系统时间
  • cal:显示日历

小贴士

  • 使用 Tab 键自动补全 文件名或命令。
  • 使用 上下箭头 调出历史命令。
  • 遇到不懂的命令,先查 man commandcommand --help
  • 在生产环境中,慎用 rm -rf /chmod -R 777 / 等危险命令
相关推荐
搜佛说17 小时前
sfsEdgeStore轻量级边缘计算数据存储适配平台
数据库·人工智能·物联网·边缘计算·iot
良许Linux17 小时前
ASIC的设计和制造
单片机·嵌入式硬件·fpga开发·程序员·嵌入式·制造
雨洛lhw17 小时前
DMA技术
嵌入式硬件·dma
旭日初扬17 小时前
N32H762IIL时钟树
单片机·嵌入式硬件
良许Linux18 小时前
汽车电子技术和汽车网络
网络·单片机·嵌入式硬件·汽车·嵌入式·制造
forAllforMe18 小时前
STM32 中断分组解析 说明,以及优先级
stm32·单片机·嵌入式硬件
不脱发的程序猿18 小时前
嵌入式Linux:阻塞式I/O与非阻塞式I/O
linux·服务器·单片机·嵌入式硬件·嵌入式
01二进制代码漫游日记18 小时前
C/C++中的内存区域划分
c语言·jvm·数据结构·学习
炸膛坦客18 小时前
单片机/C语言八股:(三)C 语言编译器的优化功能,包括 keil(仅作了解)
c语言·单片机·嵌入式硬件
人道领域18 小时前
【绝对干货】C语言常量,变量,内存全方位总结:从入门到精通,这一篇就够了!
c语言·开发语言