Linux基础命令的生产常用命令及其示例简单解释
Linux 生产环境常用基础命令及其详细解释,涵盖文件操作、系统管理、网络调试、日志分析等核心场景,并附带实际示例。
一、文件与目录操作
1. ls
- 功能:列出目录内容。
- 常用参数:
-l
:显示详细信息(权限、大小、时间)。-a
:显示隐藏文件(以.
开头的文件)。-h
:以易读格式显示文件大小(如 GB、MB)。
- 示例:
ls -la /home/user # 显示用户目录下的所有文件(含隐藏文件) ls -R /var/log # 递归列出 `/var/log` 下的所有文件
2. cd
- 功能:切换目录。
- 常用操作:
cd ~
:返回家目录(如/home/user
)。cd ..
:返回上一级目录。
- 示例:
cd /etc/nginx # 进入 Nginx 配置目录 cd - # 返回上一次所在目录
3. mkdir
- 功能:创建目录。
- 常用参数:
-p
:递归创建多级目录。
- 示例:
mkdir -p project/src/backend # 创建嵌套目录结构
4. cp
- 功能:复制文件或目录。
- 常用参数:
-r
:递归复制目录。-i
:覆盖前提示确认。
- 示例:
cp config.txt /backup/ # 复制文件到备份目录 cp -r /etc/nginx /opt/ # 递归复制整个目录
5. mv
- 功能:移动文件或重命名文件/目录。
- 示例:
mv old_name.txt new_name.txt # 重命名文件 mv file.txt /data/ # 移动文件到 `/data` 目录
6. rm
- 功能:删除文件或目录。
- 常用参数:
-r
:递归删除目录。-f
:强制删除(不提示确认)。
- 示例:
rm -rf /tmp/old_dir/ # 强制删除目录及其内容
7. touch
- 功能:创建空文件或更新文件时间戳。
- 示例:
touch log_20250806.txt # 创建新文件
8. find
- 功能:查找文件或目录。
- 常用参数:
-name
:按名称匹配(支持通配符*
)。-type
:指定类型(f
文件,d
目录)。-size
:按文件大小查找。-exec
:执行操作(如删除、重命名)。
- 示例:
find /var/log -name "*.log" -type f # 查找所有 `.log` 文件 find . -size +10M -exec rm -f {} \; # 删除当前目录下大于 10MB 的文件
9. cat
- 功能:查看文件内容或合并文件。
- 示例:
cat config.conf # 查看文件内容 cat file1.txt file2.txt > combined.txt # 合并两个文件
10. less
/ more
- 功能:分页查看文件内容(
less
更强大,支持上下滚动)。 - 示例:
less large_log_file.log # 查看大文件
11. head
/ tail
- 功能:查看文件开头或末尾内容。
- 常用参数:
-n
:指定行数。-f
:实时跟踪文件更新(常用于日志)。
- 示例:
head -n 20 access.log # 查看日志前 20 行 tail -f /var/log/syslog # 实时监控日志更新
二、系统管理与监控
1. top
- 功能:实时监控系统资源(CPU、内存、进程)。
- 示例:
top # 查看实时进程状态
2. htop
- 功能:增强版
top
(需安装),支持彩色显示和交互式操作。 - 示例:
htop # 更直观的进程监控
3. ps
- 功能:查看当前进程状态。
- 常用参数:
aux
:显示所有进程的详细信息。
- 示例:
ps aux | grep nginx # 查找 Nginx 进程
4. kill
/ killall
- 功能:终止进程。
- 示例:
kill 1234 # 终止进程 ID 为 1234 的进程 killall nginx # 终止所有 Nginx 进程
5. df
/ du
- 功能:
df
:查看磁盘空间使用情况。du
:查看目录大小。
- 常用参数:
-h
:以易读格式显示。
- 示例:
df -hT # 查看磁盘使用及文件系统类型 du -sh /var/log # 显示 `/var/log` 目录大小
6. free
- 功能:查看内存和交换空间使用情况。
- 示例:
free -h # 以 GB/MB 显示内存使用
7. uptime
- 功能:查看系统运行时间、负载。
- 示例:
uptime # 输出类似 "12:34:56 up 3 days, 1 user, load average: 0.15, 0.10, 0.05"
8. vmstat
- 功能:报告虚拟内存统计信息(CPU、内存、I/O)。
- 示例:
vmstat 1 10 # 每秒更新一次,共 10 次
9. iostat
- 功能:监控磁盘 I/O 性能。
- 示例:
iostat -x 1 5 # 显示扩展磁盘统计,每秒更新 5 次
10. iotop
- 功能:实时监控磁盘 I/O 使用情况(需安装)。
- 示例:
sudo iotop # 查看各进程的 I/O 消耗
11. sar
- 功能:系统活动报告(需安装
sysstat
)。 - 示例:
sar -u 1 5 # 每秒采集 CPU 使用率 5 次
三、网络与安全
1. ifconfig
/ ip
- 功能:查看或配置网络接口。
- 示例:
ip a show # 查看所有网络接口信息
2. ping
- 功能:测试网络连通性。
- 示例:
ping google.com # 测试与 Google 的连接
3. traceroute
- 功能:追踪数据包路径。
- 示例:
traceroute example.com # 显示到目标主机的路由路径
4. netstat
- 功能:显示网络连接状态。
- 常用参数:
-tuln
:列出监听的 TCP/UDP 端口。
- 示例:
netstat -ntulp # 查看开放的端口
5. ss
- 功能:替代
netstat
,查看 socket 状态。 - 示例:
ss -ntulp # 查看 TCP/UDP 监听端口
6. curl
/ wget
- 功能:从网络下载文件。
- 示例:
curl https://example.com # 获取网页内容 wget https://example.com/file.zip # 下载文件
7. ssh
/ scp
- 功能:
ssh
:远程登录。scp
:安全复制文件。
- 示例:
ssh user@remote_host # 登录远程主机 scp file.txt user@remote:/path/ # 上传文件到远程主机
8. rsync
- 功能:高效同步文件(支持增量备份)。
- 示例:
rsync -avz /data/ user@backup:/backup/ # 同步目录到远程
9. nmap
- 功能:网络扫描与端口检测。
- 示例:
nmap 192.168.1.1 # 扫描主机开放端口
10. openssl
- 功能:加密和证书管理。
- 示例:
openssl s_client -connect example.com:443 # 测试 HTTPS 连接
四、文本处理
1. grep
- 功能:搜索文本内容。
- 常用参数:
-i
:忽略大小写。-r
:递归搜索目录。-v
:反向匹配(排除指定内容)。
- 示例:
grep "ERROR" syslog # 查找包含 "ERROR" 的行 grep -r "TODO" /project/ # 递归查找 `/project` 中的 TODO 注释
2. sed
- 功能:流编辑器(批量替换文本)。
- 示例:
sed 's/old/new/g' file.txt # 替换文件中的 "old" 为 "new"
3. awk
- 功能:文本模式扫描和处理(适合字段提取)。
- 示例:
awk '{print $1}' access.log # 提取日志第一列(IP 地址)
4. cut
/ paste
- 功能:
cut
:裁剪字段。paste
:合并文件。
- 示例:
cut -d: -f1 /etc/passwd # 提取用户列表 paste file1.txt file2.txt # 合并两个文件
5. sort
/ uniq
- 功能:
sort
:排序。uniq
:去重。
- 示例:
sort data.txt | uniq # 去重 sort -n numbers.txt # 数字排序
五、用户与权限管理
1. useradd
/ userdel
- 功能:创建/删除用户。
- 示例:
sudo useradd -m -s /bin/bash newuser # 创建用户并设置默认 shell sudo userdel -r olduser # 删除用户及家目录
2. passwd
- 功能:修改用户密码。
- 示例:
sudo passwd username # 修改用户密码
3. chmod
/ chown
- 功能:
chmod
:修改文件权限。chown
:修改文件所属用户/组。
- 示例:
chmod 755 script.sh # 设置脚本权限为 rwxr-xr-x chown user:group file.txt # 修改文件归属用户和组
六、日志与调试
1. journalctl
- 功能:查看 systemd 日志。
- 示例:
journalctl -u nginx.service # 查看 Nginx 服务日志 journalctl -b # 查看本次启动的日志
2. strace
- 功能:跟踪进程系统调用(调试工具)。
- 示例:
strace ls /nonexistent # 查看 `ls` 命令的系统调用过程
七、其他实用命令
1. history
- 功能:查看历史命令。
- 示例:
history | grep ssh # 查找包含 "ssh" 的命令记录
2. alias
/ unalias
- 功能:定义命令别名。
- 示例:
alias ll='ls -la' # 创建 `ll` 别名 unalias ll # 删除别名
3. clear
- 功能:清空终端屏幕。
- 示例:
clear # 快速清屏
4. echo
- 功能:输出字符串或变量。
- 示例:
echo "Hello, World!" > greeting.txt # 写入字符串到文件
5. export
/ env
- 功能:设置或查看环境变量。
- 示例:
export PATH=$PATH:/usr/local/bin # 添加路径到 PATH env | grep PATH # 查看所有环境变量
6. nice
/ renice
- 功能:调整进程优先级。
- 示例:
nice -n 10 ./my_script.sh # 以低优先级运行脚本 renice 5 -p 1234 # 调整进程 1234 的优先级
7. nohup
- 功能:后台运行进程并忽略挂断信号。
- 示例:
nohup long_process.sh > output.log & # 后台运行并持久化日志
八、磁盘与文件系统
1. fdisk
- 功能:管理磁盘分区(需谨慎操作)。
- 示例:
sudo fdisk -l # 列出磁盘分区信息
2. mkfs
- 功能:创建文件系统(如
mkfs.ext4
)。 - 示例:
sudo mkfs.ext4 /dev/sdb1 # 格式化分区为 ext4
3. mount
/ umount
- 功能:
mount
:挂载文件系统。umount
:卸载文件系统。
- 示例:
sudo mount /dev/sdb1 /mnt/data # 挂载分区到 `/mnt/data` sudo umount /mnt/data # 卸载分区
九、系统时间与时区
1. date
- 功能:显示或设置系统时间。
- 示例:
date # 查看当前时间
2. timedatectl
- 功能:管理时间和时区(systemd 系统)。
- 示例:
timedatectl set-timezone Asia/Shanghai # 设置时区 timedatectl set-time "2025-08-06 23:00" # 设置系统时间
十、系统更新与软件管理
1. apt
/ yum
/ dnf
- 功能:包管理工具(根据发行版选择)。
- 示例:
sudo apt update && sudo apt upgrade # 更新 Ubuntu/Debian 系统 sudo yum install nginx # 在 CentOS/RHEL 安装 Nginx
2. rpm
- 功能:管理 RPM 包(Red Hat 系发行版)。
- 示例:
rpm -qa | grep nginx # 查询已安装的 Nginx 包