字数 2279,阅读大约需 12 分钟

ls # 简单列出
ls -l # 详细列表(权限、大小、时间)
ls -la # 加上隐藏文件
ls -lh # 大小显示得更友好
ls -lt # 按修改时间排
ls -R # 连子目录一起显示cd /path/to/dir # 进入指定目录
cd .. # 退到上一级
cd ~ # 回自己家目录
cd - # 回刚才待的地方
cd / # 去根目录逛逛
pwd # 看看现在在哪儿cp file1 file2 # 复制文件
cp -r dir1 dir2 # 复制整个文件夹
cp -i file1 file2 # 覆盖前问一下
cp -v file1 file2 # 复制时显示过程
sudo cp file /etc/ # 复制到系统目录(需要权限)mv old.txt new.txt # 给文件改名
mv file /path/to/ # 把文件搬走
mv -i file1 file2 # 覆盖前问一下
mv -v file dir/ # 搬动时显示过程⚠️ 注意:Linux 没有回收站,误操作通常找不回来!
rm file # 删除文件
rm -r directory # 删除文件夹
rm -f file # 强制删除,不废话
rm -rf directory # 强制删除文件夹(慎用!)
rm -i file # 删除前问一下⚠️ 警告:rm -rf / 会删掉整个系统!用之前一定要确认路径。
mkdir newdir # 创建目录
mkdir -p a/b/c # 一次性创建多级目录
mkdir -p project/{src,docs,tests} # 同时创建多个子目录touch file.txt # 创建空文件
touch file1 file2 # 同时创建多个
touch {1..10}.txt # 批量创建文件find /path -name "filename" # 按名字找
find . -name "*.txt" # 找特定后缀
find /home -user username # 按主人找
find . -mtime -7 # 找最近7天改过的
find . -size +100M # 找大于100MB的大块头
find . -type f -name "*.log" -delete # 找到并删除cat file.txt # 全部显示
cat -n file.txt # 加上行号
cat file1 file2 > all # 合并文件
less file.txt # 分页查看(文件大时用这个)less file.txt
# 常用操作:
# 空格 - 往下翻
# b - 往上翻
# /关键词 - 搜索
# q - 退出head file.txt # 前10行
head -n 20 file.txt # 前20行
tail file.txt # 后10行
tail -n 20 file.txt # 后20行
tail -f /var/log/syslog # 实时盯着日志
tail -f -n 50 logfile # 盯着最后50行grep "pattern" file # 简单搜索
grep -r "pattern" /path # 搜遍所有子目录
grep -i "pattern" file # 忽略大小写
grep -v "pattern" file # 找不包含的
grep -n "pattern" file # 带上行号
grep -l "pattern" *.txt # 只显示文件名
ps aux | grep nginx # 找特定进程wc file.txt # 行数、词数、字节数
wc -l file.txt # 只看行数
wc -w file.txt # 只看词数
find . -name "*.py" | xargs wc -l # 统计Python代码总行数chmod +x script.sh # 加执行权限
chmod 755 file # 常见的755权限
chmod 644 file # 常见的644权限
chmod -R 755 dir/ # 整个目录一起改
chmod u+x file # 只给所有者加执行权权限数字怎么算:
chown user file # 改所有者
chown user:group file # 所有者、组一起改
chown -R user dir/ # 整个目录递归改
sudo chown root file # 需要root权限sudo command # 用root权限跑命令
sudo -i # 切换成root用户
sudo !! # 给上一条命令加sudo
sudo -u user command # 用其他用户身份跑su - # 切换到root
su - username # 切换到其他用户
exit # 回到原来的用户passwd # 改自己的密码
sudo passwd user # 帮别人改密码ps aux # 显示所有进程
ps aux | grep nginx # 找特定的进程
ps -ef # 完整格式显示
top # 动态查看(实时更新)top # 实时监控进程
htop # 更好看的界面(需要安装)
# top界面里常用:
# P - 按CPU排序
# M - 按内存排序
# k - 杀掉进程
# q - 退出kill PID # 正常结束
kill -9 PID # 强制杀死
killall process_name # 按名字灭掉
pkill pattern # 按模式匹配灭掉systemctl start nginx # 启动
systemctl stop nginx # 停止
systemctl restart nginx # 重启
systemctl status nginx # 看状态
systemctl enable nginx # 开机自启
systemctl disable nginx # 关闭自启
systemctl list-units # 列出所有服务command & # 直接丢到后台跑
Ctrl+Z # 暂停前台任务
bg # 暂停的任务继续在后台跑
fg # 拉回前台
jobs # 看看后台有哪些任务df -h # 友好显示
df -i # 看inode使用情况
df -T # 显示文件系统类型du -sh /path # 查看目录总大小
du -ah | sort -rh | head -10 # 找出最大的10个文件
du -d 1 | sort -rh # 当前目录各子目录大小ping google.com # 一直ping
ping -c 4 google.com # ping 4次就停
ping -I eth0 host # 指定网卡pingnetstat -tulpn # 看所有监听端口
ss -tulpn # 更现代的替代品
netstat -rn # 看路由表tar -czvf archive.tar.gz dir/ # 压缩
tar -xzvf archive.tar.gz # 解压
tar -tf archive.tar.gz # 查看包内容
tar -xzf archive.tar.gz -C /path # 解压到指定目录参数记忆口诀:
zip -r archive.zip dir/ # 压缩
unzip archive.zip # 解压
unzip -l archive.zip # 查看内容gzip file # 压缩
gunzip file.gz # 解压
gzip -d file.gz # 解压(和gunzip一样)1. Permission denied(权限不够)
sudo command # 借管理员权限
chmod +x file # 加执行权限
chown user file # 改文件主人2. Command not found(找不到命令)
which command # 找命令在哪儿
apt search package # 搜包(Debian/Ubuntu)
yum search package # 搜包(CentOS/RHEL)3. No such file or directory(文件不存在)
pwd # 确认现在在哪儿
ls -la # 看看有什么文件
find / -name "file" # 全局搜索4. Cannot overwrite directory
rm -rf dir/ # 先删掉目标
mv -T source dest # 强制覆盖5. Device or resource busy(被占用了)
lsof /path # 谁在用这个文件?
fuser -vm /path # 看看占用进程
umount -l /mnt # 强制卸载Tab | |
Ctrl+C | |
Ctrl+Z | |
Ctrl+D | |
Ctrl+L | |
Ctrl+A | |
Ctrl+E | |
Ctrl+U | |
Ctrl+K | |
Ctrl+R | |
↑/↓ |
查看帮助:
man command — 完整手册command --help — 简要帮助1. 安全第一
rm -rf 用之前想三遍sudo 悠着点敲2. 善用帮助
man command # 看手册
command --help # 快速帮助
tldr command # 简明版帮助(需要安装)3. 实践建议
history 回顾常用命令4. 推荐学习顺序
文件操作
ls -la # 列出所有
cd /path # 切换
cp src dst # 复制
mv src dst # 移动/改名
rm file # 删除
mkdir dir # 创建目录
find . -name x # 查找权限
chmod 755 file # 常见权限
chmod +x file # 加执行权
chown u:g file # 改所有者和组
sudo cmd # 管理员执行进程
ps aux # 查看进程
top # 实时监控
kill PID # 杀掉进程
systemctl start/stop/restart # 服务管理网络
ping host # 测试连通
netstat -tulpn # 查看端口
ssh user@host # 远程登录
wget url # 下载文件