1. 文件与目录操作
ls
功能:列出目录内容
常用参数:
-l
:长格式显示(权限、大小、时间等)-a
:显示隐藏文件(以.
开头的文件)-h
:以易读格式显示文件大小(如KB/MB)
示例:
ls -lah /home # 查看/home目录下所有文件的详细信息
cd
功能:切换当前工作目录
示例:
cd /var/log # 进入/var/log目录
cd .. # 返回上一级目录
cd ~ # 进入当前用户的家目录
cp
功能:复制文件或目录
参数:
-r
:递归复制目录-i
:覆盖前提示确认
示例:
cp file1.txt /backup/ # 复制文件
cp -r dir1/ /backup/ # 复制目录
mv
功能:移动文件或目录,也可用于重命名
示例:
mv old.txt new.txt # 重命名文件
mv file1.txt /tmp/ # 移动文件到/tmp目录
rm
功能:删除文件或目录
参数:
-r
:递归删除目录-f
:强制删除(不提示)
示例:
rm file.txt # 删除文件
rm -rf old_dir/ # 强制递归删除目录(慎用!)
mkdir
功能:创建目录
参数:
-p
:递归创建多级目录
示例:
mkdir new_folder
mkdir -p dir1/dir2/dir3 # 创建嵌套目录
touch
功能:创建空文件或更新文件时间戳
示例:
touch newfile.txt # 创建新文件
2. 文件内容查看与编辑
cat
功能:显示文件内容
示例:
cat file.txt # 查看文件内容
cat file1.txt file2.txt > combined.txt # 合并文件
more
/ less
功能:分页查看文件内容(less
支持上下翻页)
示例:
less large_file.log # 分页查看日志文件(按`q`退出)
head
/ tail
功能:查看文件头部或尾部内容
参数:
-n 10
:显示前/后10行tail -f
:实时追踪文件变化(常用于日志监控)
示例:
head -n 5 file.txt # 显示前5行
tail -f /var/log/syslog # 实时监控系统日志
grep
功能:文本搜索工具
参数:
-i
:忽略大小写-v
:反向匹配(显示不包含关键字的行)-r
:递归目录搜索
示例:
grep "error" /var/log/syslog # 查找包含"error"的行
grep -r "TODO" /home/user/code/ # 递归搜索代码目录中的"TODO"
find
功能:查找文件或目录
参数:
-name
:按名称搜索-type
:按类型搜索(f
为文件,d
为目录)-exec
:对搜索结果执行命令
示例:
find /home -name "*.txt" # 查找所有.txt文件
find /var/log -type f -mtime +7 # 查找7天前修改过的文件
3. 系统管理与监控
top
功能:实时显示系统进程和资源占用(CPU、内存等)
交互命令:
k
:终止进程M
:按内存排序P
:按CPU排序
ps
功能:显示当前进程状态
常用参数:
aux
:查看所有进程详细信息
示例:
ps aux | grep nginx # 查找nginx进程
kill
功能:终止进程
参数:
-9
:强制终止
示例:
kill 1234 # 终止PID为1234的进程
kill -9 1234 # 强制终止
df
功能:查看磁盘空间使用情况
参数:
-h
:以易读格式显示
示例:
df -h # 查看所有挂载点的磁盘使用情况
du
功能:查看目录或文件占用的磁盘空间
参数:
-sh
:汇总显示总大小
示例:
du -sh /var/log/ # 查看/var/log目录的总大小
free
功能:查看内存使用情况
参数:
-h
:以易读格式显示
示例:
free -h # 查看内存和Swap使用情况
4. 网络工具
ping
功能:测试网络连通性
示例:
ping google.com # 检查与Google的网络连接(按Ctrl+C停止)
ifconfig
/ ip
功能:查看或配置网络接口
示例:
ifconfig eth0 # 查看eth0网卡信息(旧版命令)
ip addr show # 查看所有网络接口(新版命令)
netstat
功能:显示网络连接、路由表、接口统计等信息
参数:
-tuln
:查看所有监听端口
示例:
netstat -tuln | grep 80 # 检查80端口是否被监听
curl
功能:命令行HTTP请求工具
参数:
-I
:仅显示响应头-O
:下载文件
示例:
curl -I https://example.com # 查看HTTP响应头
curl -O https://example.com/file.zip # 下载文件
wget
功能:下载文件
示例:
wget https://example.com/file.tar.gz # 下载文件
5. 权限管理
chmod
功能:修改文件权限
参数:
- 数字模式:
chmod 755 file.sh
- 符号模式:
chmod u+x file.sh
示例:
chmod 644 file.txt # 设置权限为rw-r--r--
chmod +x script.sh # 添加可执行权限
chown
功能:修改文件所有者
示例:
chown user:group file.txt # 修改所有者和所属组
6. 压缩与解压
tar
功能:打包和解压文件
参数:
-c
:创建压缩包-x
:解压-z
:使用gzip压缩-v
:显示过程
示例:
tar -czvf archive.tar.gz dir1/ # 压缩目录为gzip格式
tar -xzvf archive.tar.gz # 解压gzip文件
gzip
/ gunzip
功能:压缩或解压文件(生成.gz
文件)
示例:
gzip file.txt # 压缩为file.txt.gz
gunzip file.txt.gz # 解压
7. 其他高频命令
命令 | 功能 | 示例 |
---|---|---|
history | 查看命令历史记录 | history | grep "ssh" |
man | 查看命令手册 | man ls |
echo | 输出文本或变量 | echo $PATH |
date | 显示或设置系统时间 | date "+%Y-%m-%d %H:%M:%S" |
ssh | 远程登录服务器 | ssh [email protected] |
scp | 安全复制文件(基于SSH) | scp file.txt user@remote:/tmp/ |
crontab | 定时任务管理 | crontab -e |
alias | 创建命令别名 | alias ll='ls -alh' |
uname | 显示系统信息 | uname -a |
which | 查找命令的安装路径 | which python |
whereis | 查找命令的二进制、源码和手册位置 | whereis nginx |
ln | 创建链接文件 | ln -s /path/to/file link_name |
systemctl | 管理系统服务(systemd) | systemctl start nginx |
journalctl | 查看系统日志(systemd) | journalctl -u nginx |
useradd | 添加用户 | useradd -m new_user |
passwd | 修改用户密码 | passwd username |
su | 切换用户身份 | su - root |
sudo | 以管理员权限执行命令 | sudo apt update |
apt / yum | 包管理工具(Debian/RedHat系) | apt install nginx |
rsync | 高效文件同步工具 | rsync -avz src/ user@remote:/dest/ |
nohup | 后台运行命令(终端关闭不终止) | nohup python app.py & |
总结
掌握这些命令可覆盖 80% 的日常 Linux 操作需求,建议结合实践练习加深理解!