文件和目录操作

命令说明参数示例用法
ls列出目录内容-l:长格式显示
-a:显示隐藏文件
-h:人类可读大小
-R:递归列出子目录
-t:按时间排序
--color:颜色区分类型
ls -lah(详细列出所有文件,大小可读)
cd切换目录无参数:直接跟路径
-:切换到上一个目录
~:家目录
/:根目录
cd /home/user(切换到指定目录)
pwd显示当前工作目录绝对路径-L:逻辑路径(含符号链接)
-P:物理路径(解析符号链接)
pwd(输出当前路径)
mkdir创建目录-p:创建父目录(不报错)
-m:设置权限,如 -m 755
mkdir -p /tmp/newdir(创建多级目录)
rmdir删除空目录-p:递归删除空目录
--ignore-fail-on-non-empty:忽略非空错误
rmdir empty_dir(删除空目录)
touch创建空文件或更新时间戳-a:仅更新访问时间
-m:仅更新修改时间
-t:指定时间
touch file.txt(创建空文件)
cp复制文件或目录-r:递归复制目录
-p:保留属性
-v:显示过程
-i:交互
cp -r dir1 dir2(复制目录)
mv移动或重命名文件/目录-i:交互覆盖
-f:强制覆盖
-v:显示过程
mv file.txt /tmp/(移动文件)
rm删除文件或目录-r:递归删除
-f:强制删除
-i:交互删除
-v:显示过程
rm -rf dir(强制删除目录)
find在指定目录下查找文件-name:按文件名
-iname:忽略大小写
-type:类型(如 f 文件)
-size:按大小
-exec:执行命令
find / -name "*.txt"(查找 txt 文件)
locate快速查找文件(基于数据库)-i:忽略大小写
-r:正则表达式
-n:限制输出数量
locate -i document(查找文件)
cat查看文件内容或拼接文件-n:显示行号
-b:非空行号
-s:压缩连续空行
cat file1.txt file2.txt(拼接文件)
less分页查看文件内容-N:显示行号
-S:不换行长行
-i:搜索忽略大小写
less file.txt(分页查看)
more分页查看文件内容-d:显示提示
+n:从第 n 行开始
more +5 file.txt(从第5行开始)
head查看文件开头几行(默认10行)-n:指定行数
-c:按字节数
head -n 5 file.txt(显示前5行)
tail查看文件末尾几行(默认10行)-n:指定行数
-f:实时跟踪
-c:按字节数
tail -f log.txt(实时查看日志)
wc统计文件行数、字数、字符数-l:仅行数
-w:仅单词数
-c:仅字节数
-m:字符数
wc -l file.txt(统计行数)
ln创建链接(硬链接或软链接)-s:创建符号链接
-f:强制覆盖
-i:交互模式
ln -s file.txt link.txt(创建软链接)

系统管理

命令说明参数示例用法
uname显示系统信息-a:全部信息
-r:内核版本
-m:硬件名称
uname -r(显示内核版本)
uptime显示系统运行时间和负载无常用参数uptime
free查看内存使用情况-h:人类可读格式
-m:以 MB 单位
-s:每隔几秒刷新
free -h(查看内存)
df查看磁盘使用情况-h:人类可读格式
-T:显示文件系统类型
-i:显示 inode
df -h(查看磁盘使用)
du统计目录或文件占用空间-h:人类可读格式
-s:汇总总大小
-d:指定深度
du -sh /path(查看总大小)
top实时查看进程和系统资源无需参数,交互模式:
k:杀进程
u:按用户过滤
q:退出
top(实时查看进程)
htop更友好的进程查看工具(需安装)无需参数,交互模式:
F2:设置
F9:杀进程
htop(查看进程)
dmesg查看系统启动和硬件日志-T:人类可读时间
-l:按级别(如 err
--follow:实时
`dmesg
shutdown关机或重启-h:关机
-r:重启
now:立即
+n:n 分钟后
shutdown -h now(立即关机)
reboot重启系统无常用参数reboot
lscpu显示 CPU 信息无常用参数lscpu(查看 CPU 信息)
lsblk列出块设备信息(如磁盘分区)-f:显示文件系统类型
-l:列表格式
lsblk(查看磁盘分区)
dmidecode查看硬件信息(如 BIOS、内存)-t:指定类型,如 biosmemorydmidecode -t memory(查看内存信息)

进程管理

命令说明参数示例用法
ps显示当前进程快照aux:显示所有进程
-ef:带父进程信息
-p:指定 PID
ps aux(查看所有进程)
kill终止指定进程-9:强制终止
-15:优雅终止
-l:列出信号
kill -9 1234(强制终止进程)
killall按进程名终止进程-i:交互模式
-9:强制终止
-u:按用户
killall firefox(终止 Firefox)
pkill按进程名或其他属性终止进程-u:按用户
-9:强制终止
-f:匹配完整命令行
pkill -u user(终止用户进程)
nice设置进程优先级启动-n:指定优先级(-20 到 19)nice -n 10 command(设置优先级)
renice修改运行中进程优先级n:新优先级
-u:按用户
renice 10 1234(修改进程优先级)
jobs查看后台任务列表-l:显示 PID
-p:仅 PID
jobs(查看后台任务)
fg将后台任务调到前台%n:任务编号fg %1(调出任务 1)
bg将任务放到后台运行%n:任务编号bg %1(后台运行任务 1)
nohup使命令在终端关闭后继续运行无参数nohup command &(后台运行)

网络相关

命令说明参数示例用法
ping测试网络连通性-c:发送次数
-i:间隔时间
-w:超时时间
ping -c 4 google.com(ping 4 次)
netstat查看网络连接、路由表(可能需安装)-tuln:监听端口
-r:路由表
-p:显示程序名
netstat -tuln(查看监听端口)
ss查看网络连接状态-tuln:监听端口
-p:进程信息
-a:所有连接
ss -tuln(查看监听端口)
ifconfig查看或配置网络接口(可能需安装)eth0 up/down:启用/禁用接口ifconfig(查看网络接口)
ip现代网络配置工具addr:显示 IP
link:显示接口
route:路由表
ip addr(查看 IP)
curl下载或发送 HTTP 请求-O:下载保存原名
-o:指定文件名
-I:仅头信息
-X:请求方法
curl -O http://example.com/file
wget下载文件-O:指定文件名
-c:断点续传
-r:递归下载
wget -c http://example.com/file
scp安全拷贝文件到远程服务器-r:递归
-P:指定端口
-i:指定私钥
scp file user@host:/path
rsync高效同步文件-a:归档模式
-v:显示过程
-z:压缩
--delete:删除多余
rsync -av /src /dest
traceroute跟踪数据包路由路径-n:不解析主机名
-w:等待时间
traceroute google.com
digDNS 查询工具+short:简洁输出
@server:指定 DNS 服务器
dig @8.8.8.8 example.com
nslookup查询 DNS 记录无常用参数nslookup example.com
hostname查看或设置主机名-i:显示 IP
-d:显示域名
hostname(查看主机名)

用户管理

命令说明参数示例用法
whoami显示当前用户名无常用参数whoami
id显示当前用户和组信息-u:用户 ID
-g:主组 ID
-G:所有组 ID
id(查看用户和组信息)
useradd创建新用户-m:创建家目录
-s:指定 shell
-G:添加到组
useradd -m -s /bin/bash newuser
passwd修改用户密码user:指定用户passwd newuser(修改用户密码)
usermod修改用户信息-aG:追加到组
-s:修改 shell
-d:修改家目录
usermod -aG sudo user(加到 sudo 组)
userdel删除用户-r:删除家目录userdel -r user(删除用户及家目录)
groupadd创建新用户组-g:指定 GIDgroupadd -g 1001 newgroup
groupdel删除用户组无常用参数groupdel group
su切换用户-:加载环境变量
user:指定用户
su - user(切换用户)
sudo以超级用户权限执行命令-u:以指定用户执行
-i:交互 shell
sudo apt update(以 root 权限更新)
who显示当前登录用户无常用参数who(查看登录用户)
w显示当前登录用户及其活动无常用参数w(查看用户活动)

权限管理

命令说明参数示例用法
chmod修改文件权限755:设置权限
u+x:用户加执行权限
-R:递归修改
chmod 755 file.txt(设置权限)
chown修改文件所有者user:group:设置用户和组
-R:递归修改
chown user:group file.txt
chgrp修改文件所属组-R:递归修改
group:指定组名
chgrp group file.txt
umask设置默认文件权限掩码022:设置掩码(文件 644,目录 755)umask 022(设置默认权限)
setfacl设置文件访问控制列表(ACL)-m:修改 ACL
-x:移除 ACL
-R:递归
setfacl -m u:user:rw file.txt
getfacl查看文件访问控制列表无常用参数getfacl file.txt

其他实用工具

命令说明参数示例用法
grep搜索文本内容-i:忽略大小写
-r:递归
-n:行号
-v:反向匹配
grep -i "error" log.txt(查找错误)
awk文本处理工具-F:指定分隔符
{print $n}:打印第 n 列
awk -F":" '{print $1}' /etc/passwd
sed流编辑器(替换、修改文本)s/old/new/g:全局替换
-i:直接修改文件
-n:抑制输出
sed 's/old/new/g' file.txt(替换)
sort对文本行排序-r:逆序
-n:数值排序
-k:按字段排序
sort -k 2 file.txt(按第2字段排序)
uniq去除重复行(需先排序)-c:统计重复次数
-i:忽略大小写
`sort file.txt
tee输出同时写入文件和终端-a:追加写入`echo “test”
tar打包和解压文件-c:创建
-x:解压
-v:显示
-f:文件名
-z:gzip
tar -czvf file.tar.gz /path(压缩)
gzip压缩文件-d:解压
-k:保留原文件
gzip file.txt(压缩文件)
gunzip解压 .gz 文件-k:保留原文件gunzip file.txt.gz(解压)
zip创建 zip 压缩文件-r:递归压缩zip -r file.zip /path(压缩目录)
unzip解压 zip 文件-d:指定解压目录unzip file.zip -d /path(解压)
man查看命令帮助手册无常用参数,直接跟命令名man ls(查看 ls 手册)
history查看历史命令-c:清除历史history(查看历史命令)
alias创建命令别名无参数,直接定义alias ll='ls -l'(创建别名)
cut提取文本中指定部分-d:指定分隔符
-f:指定字段
cut -d":" -f1 /etc/passwd(提取字段)
tr替换或删除字符无参数,直接指定规则`echo “hello”
diff比较文件差异-u:统一格式输出
-r:递归比较目录
diff file1.txt file2.txt(比较文件)
patch应用补丁文件-p:指定路径剥离级别patch < file.patch(应用补丁)
xargs将标准输入转为命令参数-n:每行参数数量
-I:占位符
`find . -name “*.txt”

软件包管理(以常见发行版为例)

命令说明参数示例用法
aptDebian/Ubuntu 包管理工具update:更新源
upgrade:升级包
install:安装
remove:卸载
apt update && apt install vim
yumCentOS/RHEL 包管理工具install:安装
remove:卸载
update:更新
yum install httpd(安装 Apache)
dnf新一代 CentOS/RHEL 包管理工具yumdnf install httpd
pacmanArch Linux 包管理工具-S:安装
-R:卸载
-Syu:更新系统
pacman -S vim(安装 vim)

系统日志和监控

命令说明参数示例用法
journalctl查看 systemd 日志-u:指定服务
-f:实时跟踪
--since:指定时间
journalctl -u sshd(查看 ssh 日志)
last查看用户登录历史-n:显示最近 n 次登录last -n 5(最近 5 次登录)
watch周期性执行命令并显示结果-n:指定间隔时间(秒)watch -n 1 date(每秒显示时间)
iotop查看磁盘 I/O 使用情况(需安装)-o:仅显示有 I/O 的进程iotop(查看 I/O 使用)
vmstat查看虚拟内存统计-s:显示统计信息
n:刷新间隔和次数
vmstat 1(每秒刷新)