1. 基本命令
显示当前目录
pwd
列出目录内容
ls -l # 详细信息
ls -a # 显示隐藏文件
ls -lh # 以人类可读格式显示文件大小
ls -R # 递归列出所有子目录
切换目录
cd /path/to/directory # 进入指定目录
cd .. # 返回上一级目录
cd ~ # 进入用户主目录
创建和删除目录
mkdir newdir # 创建目录
mkdir -p dir1/dir2 # 递归创建多级目录
rmdir dir # 删除空目录
rm -rf dir # 强制删除非空目录
创建和删除文件
touch file.txt # 创建文件
rm file.txt # 删除文件
rm -rf file.txt # 强制删除
复制和移动文件
cp source dest # 复制文件
cp -r sourcedir destdir # 复制目录
mv oldname newname # 移动/重命名文件
2. 文件查看命令
cat file.txt # 显示文件内容
tac file.txt # 反向显示文件内容
more file.txt # 分页查看
less file.txt # 分页查看,可向前翻页
head -n 10 file.txt # 显示前10行
tail -n 10 file.txt # 显示后10行
tail -f file.txt # 实时查看文件(日志监控)
3. 文件权限管理
ls -l file.txt # 查看权限
chmod 777 file.txt # 修改权限(r=4, w=2, x=1)
chmod +x script.sh # 赋予可执行权限
chown user:group file # 更改所有者
4. 进程管理
ps aux # 显示所有进程
top # 监控进程
htop # 交互式进程管理(需安装)
kill PID # 终止进程
kill -9 PID # 强制终止进程
5. 网络相关
ping google.com # 测试网络连通性
ifconfig # 显示网络接口信息(旧版)
ip addr show # 显示 IP 地址(推荐)
netstat -tulnp # 显示端口监听情况
ss -tulnp # 更现代的端口查看方式
curl -I example.com # 查看 HTTP 响应头
wget file_url # 下载文件
6. 用户管理
whoami # 当前用户
who # 在线用户
id # 用户 ID 信息
adduser newuser # 添加用户
passwd newuser # 修改用户密码
deluser newuser # 删除用户
7. 磁盘管理
df -h # 查看磁盘使用情况
du -sh folder # 查看文件夹大小
mount /dev/sdb1 /mnt # 挂载设备
umount /mnt # 卸载设备
8. 压缩解压缩
tar -cvf archive.tar files # 创建 tar 包
tar -xvf archive.tar # 解压 tar 包
tar -czvf archive.tar.gz files # 创建 tar.gz 压缩包
tar -xzvf archive.tar.gz # 解压 tar.gz 包
zip -r archive.zip files # 压缩 zip
unzip archive.zip # 解压 zip
9. 计划任务
crontab -e # 编辑计划任务
crontab -l # 查看当前计划任务
示例:每天凌晨 3 点执行备份脚本
0 3 * * * /path/to/backup.sh
10. 其他实用命令
history # 查看历史命令
alias ll='ls -lh' # 创建别名
echo $PATH # 查看环境变量
export PATH=$PATH:/newpath # 添加环境变量
find / -name file.txt # 查找文件
grep "keyword" file.txt # 搜索关键字
11. tail
命令(查看文件尾部内容)
tail
命令用于查看文件的最后几行,常用于查看日志文件。
基本语法
tail [选项] 文件名
常用选项
选项 | 说明 |
---|---|
-n N | 显示文件的最后 N 行 |
-f | 实时监视文件新增内容(常用于日志文件) |
-c N | 显示文件的最后 N 个字节 |
示例
tail -n 20 /var/log/syslog # 显示 syslog 文件的最后 20 行
tail -f /var/log/nginx/access.log # 实时查看 Nginx 访问日志
12. grep
命令(文本搜索)
grep
用于搜索文件中的特定字符串,支持正则表达式。
基本语法
grep [选项] "模式" 文件
常用选项
选项 | 说明 |
---|---|
-i | 忽略大小写 |
-v | 反向查找(排除匹配的行) |
-n | 显示匹配的行号 |
-r | 递归搜索目录下的所有文件 |
--color | 高亮显示匹配的内容 |
示例
grep "error" /var/log/syslog # 查找 syslog 文件中的 "error"
grep -i "warning" app.log # 忽略大小写查找 "warning"
grep -v "debug" app.log # 查找不包含 "debug" 的行
grep -n "fail" myfile.txt # 显示匹配的行号
grep -r "404" /var/log/nginx/ # 递归查找 nginx 日志中的 "404"
13. ln
命令(创建链接)
ln
命令用于创建硬链接或软链接(符号链接)。
基本语法
ln [选项] 目标文件 链接文件
常用选项
选项 | 说明 |
---|---|
-s | 创建符号链接(软链接) |
无选项 | 创建硬链接 |
示例
ln file1.txt file1_hardlink # 创建 file1.txt 的硬链接
ln -s /usr/bin/python3 /usr/local/bin/python # 创建符号链接
ls -l # 软链接显示 -> 指向目标
14. find
命令(查找文件)
find
命令用于查找文件和目录,支持按名称、大小、时间等条件搜索。
基本语法
find [目录] [条件] [操作]
常用选项
选项 | 说明 |
---|---|
-name "xxx" | 按文件名查找 |
-type d | 查找目录 |
-type f | 查找文件 |
-size +100M | 查找大于 100MB 的文件 |
-mtime -7 | 查找 7 天内修改的文件 |
-exec 命令 {} \; | 对查找的文件执行命令 |
示例
find / -name "test.txt" # 查找文件名为 test.txt 的文件
find . -type d # 查找当前目录下的所有目录
find /var/log -type f -size +50M # 查找 /var/log 下大于 50MB 的文件
find /tmp -mtime -1 # 查找 1 天内修改的文件
find . -name "*.log" -exec rm -f {} \; # 查找并删除 .log 文件
15. chmod
命令(修改文件权限)
chmod
用于修改文件权限,支持数字模式和符号模式。
基本语法
chmod [选项] 权限 文件
权限说明
权限 | 数字表示 | 说明 |
---|---|---|
r | 4 | 读取权限 |
w | 2 | 写入权限 |
x | 1 | 执行权限 |
示例
chmod 755 script.sh # 赋予所有者可读写执行,其他用户可读执行
chmod +x script.sh # 赋予执行权限
chmod -w file.txt # 移除写权限
16. chown
命令(修改文件所有者)
chown
用于修改文件或目录的所有者和所属组。
基本语法
chown [选项] 用户:组 文件
示例
chown user1 file.txt # 更改文件所有者为 user1
chown user1:group1 file.txt # 更改所有者和组
chown -R user1 /var/www # 递归修改 /var/www 目录的所有者
17. df
和 du
命令(磁盘管理)
df
(查看磁盘空间)
df -h # 以人类可读格式显示磁盘使用情况
df -T # 显示文件系统类型
du
(查看目录大小)
du -sh /home # 查看 /home 目录大小
du -h --max-depth=1 /var # 查看 /var 下一级目录的大小
18. tar
和 zip
(文件压缩与解压)
tar
(打包与解包)
tar -cvf archive.tar files # 创建 tar 包
tar -xvf archive.tar # 解压 tar 包
tar -czvf archive.tar.gz files # 创建 tar.gz 压缩包
tar -xzvf archive.tar.gz # 解压 tar.gz
zip
和 unzip
zip -r archive.zip files # 创建 zip 压缩包
unzip archive.zip # 解压 zip 文件
19. ps
和 kill
(进程管理)
ps
(查看进程)
ps aux # 查看所有进程
ps -ef # 另一种格式的进程信息
kill
(终止进程)
kill -9 PID # 强制终止进程
pkill -f name # 按进程名称终止
20. wget
和 curl
(下载文件)
wget
wget http://example.com/file.zip # 下载文件
wget -c http://example.com/file.zip # 断点续传
curl
curl -O http://example.com/file.zip # 下载文件
curl -I http://example.com # 查看 HTTP 头信息