Linux 常用命令详解(扩展版)
Linux系统的命令行操作可以极大提高工作效率,以下是一些常见的Linux命令汇总与详解,涵盖了文件管理、进程管理、网络操作等方面。
1. 文件和目录操作
-
切换目录
cd [目录] # 进入指定目录 cd ~ # 进入用户主目录 cd .. # 返回上一级目录 cd - # 返回上次所在的目录
-
查看目录内容
ls [选项] [路径] # 列出目录内容 ls -l # 详细列表形式 ls -a # 显示所有文件(包括隐藏文件) ls -lh # 以人类可读形式显示文件大小 ls -R # 递归列出所有子目录
-
创建文件和目录
touch [文件名] # 创建一个空文件 mkdir [目录名] # 创建一个目录 mkdir -p [路径/目录] # 创建多级目录
-
删除文件和目录
rm [文件名] # 删除指定文件 rm -r [目录名] # 删除目录及其内容 rm -rf [目录名] # 强制删除目录及所有文件
-
复制、移动和重命名
cp [源文件] [目标位置] # 复制文件 cp -r [源目录] [目标位置] # 递归复制目录 mv [源] [目标] # 移动文件或重命名
-
查找文件
find [路径] -name [文件名] # 根据文件名查找 find [路径] -type f -size +1G # 查找大于1GB的文件 locate [文件名] # 快速查找文件(需要先执行updatedb命令更新数据库)
2. 文件内容操作
-
查看文件内容
cat [文件名] # 输出文件内容 tac [文件名] # 从末行开始显示文件内容 more [文件名] # 分页查看文件内容 less [文件名] # 分页查看文件内容(支持上下翻页) head [文件名] # 查看文件的前10行 head -n 20 [文件名] # 查看文件的前20行 tail [文件名] # 查看文件的后10行 tail -f [文件名] # 实时查看文件末尾内容(常用于日志监控)
-
文件内容编辑
nano [文件名] # 使用Nano编辑器编辑文件 vi [文件名] # 使用Vim编辑器编辑文件 vim [文件名] # 使用增强版Vim编辑器
-
搜索文件内容
grep "关键词" [文件名] # 在文件中搜索关键词 grep -i "关键词" [文件名] # 忽略大小写搜索 grep -r "关键词" [目录] # 递归搜索目录中的关键词
-
比较文件
diff [文件1] [文件2] # 比较两个文件的不同 diff -u [文件1] [文件2] # 以统一格式显示不同 cmp [文件1] [文件2] # 逐字节比较两个文件
3. 进程管理
-
查看进程
ps aux # 显示所有运行中的进程 top # 实时显示系统资源使用情况和进程信息 htop # 类似top,但带有更友好的图形界面(需要先安装)
-
结束进程
kill [进程ID] # 终止指定进程 kill -9 [进程ID] # 强制终止进程 killall [进程名] # 终止指定名称的所有进程
-
后台执行进程
command & # 将命令放到后台执行 jobs # 查看当前的后台任务 fg [作业ID] # 将后台任务移至前台 bg [作业ID] # 将任务放到后台执行
4. 系统资源查看
-
磁盘使用情况
df -h # 查看磁盘使用情况 du -sh [目录] # 查看目录大小 du -h --max-depth=1 # 查看当前目录下每个子目录的大小
-
内存使用情况
free -h # 查看内存使用情况 vmstat # 实时显示虚拟内存的使用情况
-
系统信息
uname -a # 查看系统内核信息 lsb_release -a # 查看操作系统版本信息 uptime # 查看系统运行时间
-
硬件信息
lscpu # 查看CPU信息 lsblk # 查看块设备信息 lspci # 查看PCI设备信息 lsusb # 查看USB设备信息 dmidecode # 查看硬件详细信息
5. 用户和权限管理
-
用户管理
sudo useradd [用户名] # 添加用户 sudo passwd [用户名] # 设置用户密码 sudo userdel [用户名] # 删除用户 sudo usermod -aG [组名] [用户名] # 将用户添加到组中
-
组管理
sudo groupadd [组名] # 添加新组 sudo groupdel [组名] # 删除组 sudo gpasswd -a [用户名] [组名] # 将用户添加到指定组
-
文件权限管理
chmod [权限] [文件名] # 修改文件权限 chown [所有者]:[组] [文件名] # 修改文件所有者和组 chgrp [组名] [文件名] # 修改文件的组
-
权限查看
ls -l # 显示文件权限和所有者 stat [文件名] # 查看文件详细状态信息
6. 网络管理
-
查看网络配置
ifconfig # 显示网络接口信息 ip addr show # 查看IP地址信息
-
网络测试
ping [IP/域名] # 测试网络连通性 traceroute [IP/域名] # 跟踪网络路由 netstat -tuln # 显示监听的端口
-
下载文件
wget [URL] # 从指定URL下载文件 curl -O [URL] # 使用curl下载文件
-
文件传输
scp [本地文件] [远程用户名]@[IP]:[远程路径] # 通过SSH传输文件 rsync -av [源路径] [目标路径] # 高效的文件同步工具
-
网络状态
ss -tuln # 显示监听的端口和连接
7. 压缩与解压缩
-
打包文件
tar -cvf [文件.tar] [目录] # 打包文件 tar -zcvf [文件.tar.gz] [目录] # 打包并压缩 tar -jcvf [文件.tar.bz2] [目录] # 使用bzip2压缩
-
解压文件
tar -xvf [文件.tar] # 解压tar文件 tar -zxvf [文件.tar.gz] # 解压tar.gz文件 tar -jxvf [文件.tar.bz2] # 解压tar.bz2文件 unzip [文件.zip] # 解压zip文件
8. 软件包管理
- 使用APT(适用于Debian/Ubuntu)
sudo apt update # 更新包管理器索引 sudo apt upgrade # 更新系统中的所有包 sudo apt install [软件名] # 安装软件 sudo apt remove [软件名] # 删除软件 sudo apt autoremove # 自动删除不需要的包 ``