Linux常用命令大全

收录了最常用的Linux命令,适合开发者和系统管理员日常参考

小贴士: 使用浏览器的查找功能(Ctrl+F 或 Cmd+F)可以快速搜索命令
快捷键:Ctrl + F

文件和目录操作

ls [选项] [目录名]
列出目录内容。常用选项:-l 显示详细信息,-a 显示所有文件(包括隐藏文件),-h 人类可读的文件大小。
示例:ls -la /home 显示/home目录下所有文件的详细信息
cd [目录路径]
切换当前工作目录。使用 cd ~ 返回家目录,cd .. 返回上级目录。
示例:cd /var/www 切换到/var/www目录
pwd
显示当前工作目录的完整路径。
示例:pwd 显示当前所在的目录路径
cp [选项] 源文件 目标文件
复制文件或目录。常用选项:-r 递归复制目录,-i 交互式复制(覆盖前询问)。
示例:cp -r dir1 dir2 将dir1目录复制到dir2
mv [选项] 源文件 目标文件
移动或重命名文件或目录。
示例:mv file1.txt file2.txt 将file1.txt重命名为file2.txt
rm [选项] 文件或目录
删除文件或目录。常用选项:-r 递归删除,-f 强制删除(不提示)。
示例:rm -rf dir 强制删除dir目录及其所有内容
mkdir [选项] 目录名
创建新目录。常用选项:-p 创建多级目录。
示例:mkdir -p project/src/test 创建多级目录
find [路径] [表达式]
在目录树中查找文件。可以根据名称、类型、大小、时间等条件查找。
示例:find /home -name "*.txt" 在/home目录下查找所有.txt文件

系统信息与进程管理

ps [选项]
显示当前进程状态。常用选项:aux 显示所有用户的所有进程,-ef 显示完整格式。
示例:ps aux | grep nginx 查找nginx相关进程
top
动态显示系统进程信息,包括CPU、内存使用率等。按q退出。
示例:top 实时查看系统进程状态
htop
top的增强版,提供彩色界面和鼠标操作(需要单独安装)。
示例:htop 更友好的进程查看界面
kill [选项] PID
向进程发送信号,默认发送TERM信号(15)终止进程。常用选项:-9 强制终止。
示例:kill -9 1234 强制终止PID为1234的进程
df [选项]
显示磁盘空间使用情况。常用选项:-h 人类可读格式。
示例:df -h 以易读格式显示磁盘使用情况
free [选项]
显示内存使用情况。常用选项:-h 人类可读格式,-m 以MB为单位。
示例:free -h 以易读格式显示内存使用情况
uname [选项]
显示系统信息。常用选项:-a 显示所有信息。
示例:uname -a 显示所有系统信息
whoami
显示当前登录的用户名。
示例:whoami 显示当前用户

网络操作

ping [选项] 主机名/IP
测试与目标主机的网络连接。常用选项:-c 指定发送包的数量。
示例:ping -c 4 google.com 向google.com发送4个ping包
ifconfig
显示或配置网络接口参数(较旧系统)。新系统推荐使用ip addr
示例:ifconfig eth0 显示eth0接口信息
netstat [选项]
显示网络连接、路由表、接口统计等信息。常用选项:-tulnp 显示所有监听端口。
示例:netstat -tulnp 显示所有监听端口和对应进程
ss [选项]
netstat的替代工具,更快更高效。常用选项:-tulnp 显示所有监听端口。
示例:ss -tulnp 显示所有监听端口和对应进程
curl [选项] URL
用于传输数据的命令行工具,支持多种协议(HTTP、FTP等)。
示例:curl -I https://example.com 获取HTTP响应头
wget [选项] URL
从网络下载文件,支持HTTP、HTTPS和FTP协议。
示例:wget https://example.com/file.zip 下载文件
ssh [选项] 用户名@主机名
通过SSH协议安全登录远程主机。
示例:ssh user@example.com SSH登录到远程服务器
scp [选项] 源文件 目标文件
通过SSH安全地复制文件。
示例:scp file.txt user@example.com:/home/user 复制文件到远程主机

文本处理与查看

cat [选项] 文件
连接文件并打印到标准输出设备。常用于查看文件内容。
示例:cat file.txt 显示file.txt的内容
less [选项] 文件
分页显示文件内容,支持向前向后翻页。按q退出。
示例:less largefile.log 分页查看大文件
head [选项] 文件
显示文件开头部分。默认显示前10行,可用-n指定行数。
示例:head -20 file.txt 显示文件前20行
tail [选项] 文件
显示文件末尾部分。常用选项:-f 实时追踪文件变化。
示例:tail -f /var/log/syslog 实时查看系统日志
grep [选项] 模式 文件
在文件中搜索匹配模式的行。常用选项:-i 忽略大小写,-r 递归搜索。
示例:grep -r "error" /var/log 在/var/log目录递归搜索"error"
sed [选项] '命令' 文件
流编辑器,用于对文本进行过滤和转换。
示例:sed 's/old/new/g' file.txt 将文件中所有old替换为new
awk [选项] '模式 {动作}' 文件
强大的文本分析工具,可用于提取和报告数据。
示例:awk '{print $1}' file.txt 打印文件每行的第一个字段
vim [选项] 文件
强大的文本编辑器。基本操作:i进入插入模式,ESC退出插入模式,:wq保存并退出。
示例:vim file.txt 使用vim编辑文件

权限与用户管理

chmod [选项] 权限 文件
更改文件或目录的权限。权限可以用数字(如755)或符号(如u+x)表示。
示例:chmod 755 script.sh 设置脚本可执行权限
chown [选项] 用户:组 文件
更改文件或目录的所有者和所属组。
示例:chown user:group file.txt 更改文件所有者和组
sudo 命令
以超级用户权限执行命令。需要输入当前用户的密码(如果用户有sudo权限)。
示例:sudo apt update 以管理员权限更新软件包列表
passwd [用户名]
更改用户密码。如果不指定用户名,则更改当前用户的密码。
示例:passwd john 更改john用户的密码
useradd [选项] 用户名
创建新用户。常用选项:-m 创建家目录,-s 指定shell。
示例:useradd -m -s /bin/bash john 创建用户john并设置bash为默认shell
usermod [选项] 用户名
修改用户属性,如所属组、家目录、shell等。
示例:usermod -aG sudo john 将john添加到sudo组
groupadd [选项] 组名
创建新用户组。
示例:groupadd developers 创建developers组