菜鸟科技网

Linux 最常用命令有哪些?

Linux 作为一款广泛使用的操作系统,其命令行界面(CLI)提供了强大的功能,通过简洁的命令即可完成复杂的操作,掌握最常用的 Linux 命令是高效管理系统的关键,以下将从文件管理、文本处理、系统信息、网络操作、软件管理及权限控制等方面,详细介绍 Linux 中最常用的命令及其用法。

在文件管理方面,ls 是最基础的命令,用于列出目录内容,通过 ls -l 可以显示文件的详细信息(如权限、所有者、大小、修改时间),ls -a 会显示包括隐藏文件在内的所有文件,ls -h则以人类可读的格式(如 K、M、G)显示文件大小。cd 命令用于切换目录,cd .. 返回上级目录,cd ~ 进入当前用户的家目录,cd - 在上次目录和当前目录之间切换。pwd 命令用于显示当前所在的工作目录路径。mkdir 用于创建新目录,mkdir -p 可以递归创建多级目录(如 mkdir -p /a/b/c)。rm 命令用于删除文件或目录,rm -f 强制删除不提示,rm -r 递归删除目录及其内容,需谨慎使用。cp 用于复制文件或目录,cp -r 复制目录,cp -p 保留文件属性(如权限、时间戳)。mv 用于移动文件或目录,也可用于重命名(如 mv oldname newname),mv -i 可在覆盖前提示确认。touch 用于创建空文件或更新文件的时间戳。cat 用于查看文件内容,moreless 用于分页查看长文件(less 支持向前翻页)。headtail 用于查看文件的开头和末尾部分,tail -f 可实时跟踪文件内容变化(常用于日志监控)。

文本处理是 Linux 命令的强项。grep 用于在文本中搜索匹配的行,grep -i 忽略大小写,grep -r 递归搜索目录,grep -v 反向匹配(输出不包含关键词的行)。sed 是流编辑器,用于对文本进行替换、删除等操作,sed 's/old/new/g' file 将文件中所有 "old" 替换为 "new"。awk 是强大的文本分析工具,按列处理文本,awk '{print $1, $3}' file 输出文件的第一列和第三列。sort 用于对文本行进行排序,sort -n 按数字排序,sort -r 反向排序,sort -k2 按第二列排序。uniq 用于去除相邻的重复行,uniq -c 可统计重复次数,通常需与 sort 配合使用(如 sort file | uniq -c)。wc 用于统计文件的行数、单词数和字节数,wc -l 统计行数,wc -w 统计单词数,wc -c 统计字节数。

系统信息查询方面,tophtop(需安装)是动态监控系统进程和资源占用的工具,按 q 退出。ps 用于查看当前进程,ps -ef 显示所有进程的详细信息,ps aux 显示进程的 CPU 和内存占用情况。kill 用于终止进程,kill -9 强制终止,需配合进程号(PID)使用。uname -a 显示系统的详细信息(如内核版本、主机名)。df -h 用于查看磁盘空间使用情况,du -sh 查看目录或文件的总大小(-s 仅显示总计,-h 人类可读格式)。free -h 查看内存使用情况。date 用于显示或设置系统时间,date +"%Y-%m-%d %H:%M:%S" 可自定义时间格式。

网络操作命令中,ifconfigip addr 用于查看和配置网络接口(如 ip addr show eth0)。ping 用于测试网络连通性(如 ping www.baidu.com),ping -c 4 发送 4 个数据包后停止。netstat -tuln 查看监听的 TCP/UDP 端口,ss -tuln 是更高效的替代工具。ssh 用于远程登录服务器(如 ssh user@hostname),scp 用于安全复制文件(如 scp file.txt user@remote:/path/)。wgetcurl 用于下载文件,wget https://example.com/file.zip 直接下载,curl -O url 保存文件。traceroutetracert(Windows)用于跟踪网络路由路径。

软件管理方面,基于 Debian/Ubuntu 的系统使用 apt,常用命令包括 sudo apt update 更新软件列表,sudo apt install package 安装软件,sudo apt remove package 卸载软件,sudo apt upgrade 升级已安装软件,基于 RedHat/CentOS 的系统使用 yumdnf,常用命令有 sudo yum install packagesudo yum remove packagesudo yum update,编译安装时,./configure 配置编译参数,make 编译源码,sudo make install 安装。

权限控制命令中,chmod 用于修改文件权限,chmod 755 file 设置所有者可读写执行、组和其他用户可读执行,chmod u+x file 给所有者添加执行权限。chown 用于修改文件所有者,chown user:group file 同时修改所有者和所属组。sudo 用于以超级用户权限执行命令,需输入用户密码。

以下为常用命令的快速参考表格:

命令分类 常用命令 功能描述 常用选项
文件管理 ls 列出目录内容 -l(详细信息), -a(显示隐藏)
cd 切换目录 (上级), (家目录)
cp 复制文件/目录 -r(递归), -p(保留属性)
mv 移动/重命名文件 -i(覆盖提示)
文本处理 grep 文本搜索 -i(忽略大小写), -r(递归)
sed 流编辑器 s/old/new/g(替换)
awk 文本分析 {print $1}(输出第一列)
系统信息 top/htop 进程监控 q(退出)
df -h 磁盘空间查看 -h(人类可读)
free -h 内存使用查看 -h(人类可读)
网络操作 ping 网络连通性测试 -c(指定次数)
ssh 远程登录 user@hostname
wget/curl 下载文件 -O(保存为)
软件管理 apt/yum/dnf 软件安装/卸载/更新 install(安装), remove(卸载)
权限控制 chmod 修改权限 755(读写执行权限)
chown 修改所有者 user:group

相关问答FAQs

Q1: 如何快速查找包含特定关键词的文件?
A: 可以使用 find 命令结合 grep 实现,在当前目录及其子目录中查找包含 "error" 关键词的所有 .log 文件,可执行:find . -name "*.log" -exec grep -l "error" {} \;find . -name "*.log" 查找所有 .log 文件,-exec grep -l "error" {} \; 对每个文件执行 grep 搜索并输出包含关键词的文件名。

Q2: 如何查看系统已开放的端口及对应的进程?
A: 可以使用 netstatss 命令。netstat -tulnp 可显示所有 TCP(-t)和 UDP(-u)监听(-l)端口,并以数字形式显示地址(-n),同时显示进程 ID(-p),若使用 ss,命令为 ss -tulnp,其输出更简洁高效,通过端口号和 PID,可结合 ps -p PID 查看具体进程信息。

分享:
扫描分享到社交APP
上一篇
下一篇