Linux终端命令是系统管理、开发和日常操作的核心工具,掌握常用命令能极大提升效率,以下从基础操作、文件管理、系统监控、网络工具、文本处理、软件管理、权限控制、进程管理、压缩打包及高级技巧十个维度,整理常用命令及用法,并附FAQs解答。
基础操作命令
命令 |
功能描述 |
示例 |
ls |
列出目录内容 |
ls -la (显示所有文件及详细信息) |
cd |
切换目录 |
cd /home/user (切换到用户目录) |
pwd |
显示当前工作目录 |
pwd |
clear |
清空终端屏幕 |
clear |
echo |
输出文本 |
echo "Hello World" |
man |
查看命令手册 |
man ls (查看ls命令帮助) |
history |
显示命令历史记录 |
history 10 (显示最近10条命令) |
文件管理命令
命令 |
功能描述 |
示例 |
touch |
创建空文件 |
touch file.txt |
cp |
复制文件/目录 |
cp -r dir1 dir2 (递归复制目录) |
mv |
移动/重命名文件/目录 |
mv old.txt new.txt |
rm |
删除文件/目录 |
rm -rf dir (强制递归删除目录) |
mkdir |
创建目录 |
mkdir -p new/dir (创建多级目录) |
cat |
查看文件内容 |
cat file.txt |
less |
分页查看文件内容 |
less file.txt (支持上下翻页) |
find |
查找文件/目录 |
find / -name "*.txt" (查找所有txt文件) |
系统监控命令
命令 |
功能描述 |
示例 |
top |
实时显示进程状态 |
top -u user (过滤指定用户进程) |
htop |
交互式进程管理(需安装) |
htop |
df |
查看磁盘空间使用情况 |
df -h (以人类可读格式显示) |
du |
查看目录/文件大小 |
du -sh dir (显示目录总大小) |
free |
查看内存使用情况 |
free -h |
ps |
查看当前进程 |
ps aux (显示所有进程详细信息) |
网络工具命令
命令 |
功能描述 |
示例 |
ping |
测试网络连通性 |
ping google.com |
ifconfig |
查看/配置网络接口(需安装) |
ifconfig eth0 |
ip |
现代网络管理工具 |
ip addr show (显示IP地址) |
netstat |
查看网络连接状态 |
netstat -tuln (显示监听端口) |
ss |
替代netstat的命令 |
ss -tuln |
curl |
传输数据工具 |
curl -O https://example.com/file |
wget |
下载文件 |
wget https://example.com/file |
文本处理命令
命令 |
功能描述 |
示例 |
grep |
文本搜索 |
grep "error" log.txt |
sed |
流编辑器(文本替换/删除) |
sed 's/old/new/g' file.txt |
awk |
文本处理工具 |
awk '{print $1}' file.txt (输出第一列) |
sort |
文本排序 |
sort -n file.txt (数字排序) |
uniq |
去重 |
sort file.txt | uniq |
head |
查看文件前几行 |
head -n 5 file.txt |
tail |
查看文件后几行 |
tail -f file.txt (实时跟踪文件变化) |
软件管理命令
命令 |
功能描述(基于Debian/Ubuntu) |
示例 |
apt |
包管理工具 |
apt update && apt upgrade |
apt-get |
传统包管理工具 |
apt-get install package |
dpkg |
本地包管理 |
dpkg -i package.deb |
snap |
Snap包管理器 |
snap install package |
yum |
包管理工具(基于CentOS/RHEL) |
yum install package |
dnf |
新一代包管理工具(CentOS 8+) |
dnf install package |
权限控制命令
命令 |
功能描述 |
示例 |
chmod |
修改文件权限 |
chmod 755 file.txt (所有者可读可写可执行,组和其他用户可读可执行) |
chown |
修改文件所有者 |
chown user:group file.txt |
sudo |
以超级用户权限执行命令 |
sudo apt update |
su |
切换用户 |
su - username |
进程管理命令
命令 |
功能描述 |
示例 |
kill |
终止进程 |
kill -9 PID (强制终止进程) |
killall |
通过名称终止进程 |
killall process_name |
jobs |
查看后台任务 |
jobs |
fg |
将后台任务调至前台 |
fg %1 (调取任务1) |
bg |
将任务置于后台运行 |
bg %1 |
压缩打包命令
命令 |
功能描述 |
示例 |
tar |
打包/解包文件 |
tar -czvf archive.tar.gz dir (打包并压缩) |
zip |
创建zip压缩文件 |
zip -r archive.zip dir |
unzip |
解压zip文件 |
unzip archive.zip |
gzip |
压缩文件 |
gzip file.txt (生成file.txt.gz) |
高级技巧命令
命令 |
功能描述 |
示例 |
alias |
创建命令别名 |
alias ll='ls -la' |
unalias |
删除别名 |
unalias ll |
xargs |
将输入转换为命令参数 |
find . -name "*.txt" | xargs rm |
ssh |
远程登录服务器 |
ssh user@192.168.1.1 |
scp |
安全复制文件 |
scp file.txt user@host:/path/ |
相关问答FAQs
Q1: 如何快速查找包含特定关键词的文件?
A1: 使用grep
命令结合find
命令,在当前目录及子目录中查找包含"error"的.txt文件:
find . -name "*.txt" -exec grep -l "error" {} \;
-exec grep -l "error" {} \;
表示对每个找到的.txt文件执行grep搜索,-l
选项仅输出包含关键词的文件名。
Q2: 如何查看系统负载和资源占用情况?
A2: 使用top
或htop
命令查看实时进程和资源占用;通过uptime
命令查看系统负载平均值(1分钟、5分钟、15分钟);结合vmstat
命令监控内存、CPU和I/O统计:
vmstat 1 5 # 每秒刷新一次,共显示5次报告
若需更详细的磁盘I/O信息,可使用iostat
命令(需安装sysstat包)。