文件操作
查看与目录
ls # 列出当前目录文件
ls -la # 列出详细信息(含隐藏文件)
ls -lh # 人性化显示文件大小
ls -lt # 按修改时间排序
ls /path # 列出指定目录
pwd # 显示当前目录
cd # 切换到主目录
cd /path # 切换到指定目录
cd .. # 返回上级目录
cd - # 返回上一目录
tree # 树形显示目录结构
tree -L 2 # 显示到第2层
文件操作
# 创建
touch file.txt # 创建空文件
mkdir dir # 创建目录
mkdir -p a/b/c # 递归创建目录
# 复制
cp file1 file2 # 复制文件
cp -r dir1 dir2 # 复制目录
cp -v file /path # 显示复制过程
# 移动/重命名
mv file1 file2 # 重命名
mv file /path # 移动文件
# 删除
rm file.txt # 删除文件
rm -f file.txt # 强制删除
rm -r dir # 删除目录
rm -rf dir # 强制删除目录
# 查看文件
cat file.txt # 查看文件内容
more file.txt # 分页查看
less file.txt # 上下滚动查看
head -n 20 file.txt # 查看前20行
tail -n 20 file.txt # 查看后20行
tail -f file.txt # 实时查看日志
# 查找
find /path -name "*.txt" # 按名称查找
find /path -type d # 查找目录
find /path -size +100M # 查找大于100M的文件
# 搜索内容
grep "keyword" file.txt # 在文件中搜索
grep -r "keyword" /path # 递归搜索
grep -n "keyword" file.txt # 显示行号
grep -v "keyword" file.txt # 反向匹配
# 链接
ln -s /path/file link # 创建软链接
系统信息
# 系统信息
uname -a # 显示系统全部信息
cat /etc/os-release # 查看系统版本
hostnamectl # 查看主机名和系统信息
# 资源使用
top # 实时进程监控
htop # 更友好的进程监控(需安装)
top -u user # 查看指定用户进程
free -h # 查看内存使用
df -h # 查看磁盘使用
du -sh * # 查看当前目录各文件大小
# 用户和组
whoami # 显示当前用户
sudo -l # 查看当前用户权限
useradd username # 添加用户
passwd username # 设置密码
usermod -aG sudo username # 添加到sudo组
deluser username # 删除用户
网络命令
# 网络配置
ifconfig # 查看网络接口
ip addr # 查看IP地址
ip link show # 查看网络设备
# 网络测试
ping -c 4 example.com # ping测试(4次)
curl http://example.com # HTTP请求
wget https://example.com/file # 下载文件
traceroute example.com # 路由追踪
tracepath example.com # 路由追踪(无需root)
# 端口与连接
netstat -tulnp # 查看监听端口
ss -tulnp # 更现代的端口查看
lsof -i :8080 # 查看端口占用
lsof -i -P -n # 查看所有连接
# 网络工具
ssh user@host # SSH连接
scp file user@host:/path # 远程复制
rsync -av /path/ user@host:/path/ # 同步文件
权限管理
# 权限表示
# rwx rwx rwx
# 所有者 所属组 其他人
# r=4, w=2, x=1
chmod 755 file # 设置权限
chmod +x script.sh # 添加执行权限
chmod -R 755 dir # 递归设置目录权限
chown user:group file # 修改文件所有者
chown -R user:group dir # 递归修改目录所有者
# 特殊权限
chmod +s file # SUID
chmod +t /tmp # Sticky Bit
包管理
APT(Ubuntu/Debian)
# 更新
sudo apt update # 更新软件源
sudo apt upgrade # 升级所有包
sudo apt full-upgrade # 完整升级
# 安装/删除
sudo apt install package # 安装软件
sudo apt remove package # 卸载软件
sudo apt purge package # 卸载并清除配置
sudo apt autoremove # 自动清理无用依赖
# 搜索
apt search keyword # 搜索软件包
apt show package # 查看软件包信息
# 安装本地deb
sudo dpkg -i package.deb # 安装deb包
sudo apt install -f # 修复依赖
Snap
snap install package # 安装snap包
snap list # 列出已安装snap
snap remove package # 卸载snap
snap refresh # 更新snap包
Flatpak
flatpak install remote package # 安装
flatpak list # 列出
flatpak update # 更新
系统服务
# Systemd(推荐)
systemctl start service # 启动
systemctl stop service # 停止
systemctl restart service # 重启
systemctl status service # 状态
systemctl enable service # 开机自启
systemctl disable service # 禁用开机自启
systemctl list-units --type=service # 列出所有服务
# 查看日志
journalctl -u service # 查看服务日志
journalctl -f # 实时查看日志
journalctl --since "1 hour ago" # 查看最近日志
压缩解压
# tar
tar -cvf archive.tar dir/ # 打包
tar -xvf archive.tar # 解包
tar -cvzf archive.tar.gz dir/ # 打包并压缩
tar -xvzf archive.tar.gz # 解压.tar.gz
# zip
zip -r archive.zip dir/ # 压缩
unzip archive.zip # 解压
unzip -l archive.zip # 查看内容
# 7z
7z a archive.7z dir/ # 压缩
7z x archive.7z # 解压
进程管理
# 查看进程
ps aux # 查看所有进程
ps -ef # 查看进程详情
pkill process_name # 按名称杀进程
kill PID # 按PID杀进程
kill -9 PID # 强制杀进程
# 后台运行
command & # 后台运行
nohup command & # 忽略挂断信号
screen # 终端复用
tmux # 终端复用
# nice/优先级
nice -n 10 command # 低优先级运行
renice -n 10 -p PID # 修改运行中进程优先级
快捷键
| 快捷键 | 功能 |
|---|
Ctrl + C | 终止当前命令 |
Ctrl + Z | 挂起当前命令 |
Ctrl + D | 退出当前终端 |
Ctrl + L | 清屏 |
Ctrl + R | 搜索命令历史 |
Ctrl + A | 光标移到行首 |
Ctrl + E | 光标移到行尾 |
Ctrl + U | 删除光标前内容 |
Ctrl + K | 删除光标后内容 |
Tab | 自动补全 |
Tab x2 | 显示候选列表 |
常用组合
# 查看目录大小
du -sh dir/
# 查看最大目录/文件
du -sh * | sort -rh | head -10
# 查找大文件
find / -size +100M -type f 2>/dev/null
# 清理缓存
sudo apt clean # 清理apt缓存
docker system prune -a # 清理Docker
# 查看开机时间
uptime
systemd-analyze
# 查看系统负载
cat /proc/loadavg