精彩的 Linux 命令有哪些?
01 基础命令
01 文件和目录操作
ls - 列出目录内容
用途:显示当前或指定目录中的文件和子目录列表。
常用选项:
- -l:以长格式列出详细信息(如权限、所有者、大小、修改日期等)。
- -a:显示所有文件,包括隐藏文件(以 . 开头的文件)。
- -h:以人类可读的格式显示文件大小(如 KB、MB)。
cd - 更改目录
用途:切换到指定的目录。
常用选项:
- cd /path/to/directory:切换到绝对路径指定的目录。
- cd ..:切换到上一级目录。
- cd ~ 或 cd:切换到用户的主目录。
pwd - 显示当前工作目录
用途:显示当前所在的目录路径。
mkdir - 创建目录
用途:创建一个或多个新目录。
常用选项:
- -p:递归创建目录(如果父目录不存在,则一并创建)。
rm - 删除文件或目录
用途:删除文件或目录。
常用选项:
- -r:递归删除目录及其内容。
- -f:强制删除,不提示确认。
- 注意:使用时需谨慎,删除后无法恢复。
02 文本查看与编辑
cat - 查看文件内容
用途:显示文件的内容。
常用选项:
- -n:显示行号。
- -E:显示行尾符。
less - 分页查看文件内容
用途:分页显示文件内容,允许上下翻页。
常用快捷键:
- Space:向下翻页。
- b:向上翻页。
- q:退出。
vi/vim 和 nano - 文本编辑器
- vi/vim:功能强大的文本编辑器,适合高级用户。支持多种模式(如插入模式、命令模式)。
- nano:简单易用的文本编辑器,适合初学者。无需学习复杂的命令。
03 文件权限管理
chmod - 修改文件权限
用途:更改文件或目录的访问权限。
权限类型:
- r:读取权限。
- w:写入权限。
- x:执行权限。
用户类别:
- u:文件所有者。
- g:文件所属组。
- o:其他用户。
- a:所有用户(等同于 ugo)。
常用选项:
- +:添加权限。
- -:移除权限。
- =:设置权限。
chown - 修改文件所有者和组
用途:更改文件或目录的所有者和所属组。
常用选项:
- user:group:指定新的所有者和组。
- -R:递归更改目录及其内容。
02 系统管理命令
系统管理命令是 Linux 管理员日常工作中不可或缺的工具。这些命令帮助管理员进行用户与组管理、进程管理、服务管理和磁盘与存储管理等关键任务。
01 用户与组管理
useradd - 添加新用户
用途:创建一个新的用户账户。
常用选项:
- -m:创建用户的主目录。
- -s:指定用户的登录 shell。
- -G:指定用户所属的附加组。
userdel - 删除用户
用途:删除一个现有的用户账户。
常用选项:
- -r:同时删除用户的主目录和邮件文件。
groupadd - 添加新组
用途:创建一个新的用户组。
passwd - 修改用户密码
用途:更改用户密码或设置其他密码相关属性。
02 进程管理
ps - 显示当前进程状态
用途:显示系统中运行的进程信息。
常用选项:
- aux:显示所有用户的进程,包括详细信息。
- -ef:显示所有进程的完整信息。
top - 实时监控系统资源使用情况
用途:实时显示系统的 CPU、内存使用情况以及各个进程的状态。
常用快捷键:
- q:退出 top。
- k:终止某个进程。
- r:重置进程优先级。
kill - 终止进程
用途:发送信号给进程以终止其运行。
常用选项:
- -9:强制终止进程(SIGKILL)。
- -15:正常终止进程(SIGTERM)。
03 服务管理
systemctl - 系统和服务管理器
用途:用于管理系统和服务的状态,启动、停止、重启或查看服务状态。
常用命令:
- start:启动服务。
- stop:停止服务。
- restart:重启服务。
- status:查看服务状态。
- enable:设置服务开机自启。
- disable:取消服务开机自启。
service - 传统服务管理命令
用途:用于启动、停止、重启或查看服务状态(适用于较旧的系统或某些特定服务)。
04 磁盘与存储管理
df - 显示磁盘空间使用情况
用途:显示文件系统的磁盘空间使用情况。
常用选项:
- -h:以人类可读的格式显示(如 KB、MB、GB)。
- -T:显示文件系统的类型。
du - 显示目录或文件的磁盘使用情况
用途:显示指定目录或文件占用的磁盘空间。
常用选项:
- -sh:以简洁的人类可读格式显示总大小。
- -a:显示所有文件和子目录的详细信息。
fdisk - 分区表操作工具
用途:用于查看、创建、修改和删除磁盘分区。
- mount 和 umount - 挂载和卸载文件系统
- mount:将文件系统挂载到指定的挂载点。
- umount:卸载已挂载的文件系统。
03 网络相关命令
网络相关命令是 Linux 系统管理员和用户进行网络配置、诊断和管理的重要工具。这些命令可以帮助您检查网络连接状态、配置网络接口、传输文件等。
01 网络配置与诊断
ifconfig - 配置网络接口(已逐步被 ip 命令取代)
用途:显示或配置网络接口的 IP 地址、子网掩码和其他参数。
常用选项:
- eth0:指定要配置的网络接口。
- up/down:启用或禁用网络接口。
ip - 配置和显示网络接口信息
用途:替代 ifconfig,用于更灵活地管理和配置网络接口。
常用命令:
- addr show:显示所有网络接口的 IP 地址。
- link set dev <interface> up/down:启用或禁用网络接口。
- route show:显示路由表。
ping - 测试网络连接
用途:向目标主机发送 ICMP Echo 请求并接收响应,以测试网络连通性。
常用选项:
- -c:指定发送的请求数量。
- -i:设置请求间隔时间(秒)。
netstat - 显示网络连接、路由表和接口统计信息
用途:显示各种网络连接状态、路由表、接口统计信息等。
常用选项:
- -tuln:显示所有监听的 TCP 和 UDP 端口。
- -r:显示路由表。
traceroute - 跟踪数据包路径
用途:显示数据包从本地主机到目标主机所经过的路由器。
02 远程连接与文件传输
ssh - 安全远程登录
用途:通过加密通道安全地登录远程服务器。
常用选项:
- -p:指定远程服务器的 SSH 端口号。
- -i:指定私钥文件路径。
scp - 安全复制文件
用途:通过 SSH 协议安全地在本地和远程主机之间复制文件。
常用选项:
- -P:指定远程服务器的 SSH 端口号。
- -r:递归复制目录。
rsync - 同步文件和目录
用途:高效地同步文件和目录,支持增量传输、压缩等功能。
常用选项:
- -a:归档模式,保留文件属性和结构。
- -z:压缩传输的数据。
- -v:详细输出。
04 搜索与过滤命令
搜索和过滤命令是 Linux 系统中用于查找文件、目录或文本内容的强大工具。这些命令可以帮助您快速定位所需的信息,并对数据进行精确的筛选和处理。
01 文件搜索
find - 在文件系统中查找文件
用途:在指定目录及其子目录中查找文件或目录。
常用选项:
- -name:按名称查找文件(支持通配符)。
- -type:指定查找类型(如 f 表示文件,d 表示目录)。
- -mtime:按修改时间查找文件。
- -size:按文件大小查找文件。
locate - 快速查找文件
用途:通过预先构建的数据库快速查找文件路径。
优点:比 find 更快,但依赖于定期更新的数据库。
常用命令:
- updatedb:更新 locate 数据库(可能需要管理员权限)。
02 文本搜索与过滤
grep - 在文件中搜索文本模式
用途:在文件中查找符合指定模式的行。
常用选项:
- -i:忽略大小写。
- -r 或 -R:递归查找目录中的所有文件。
- -v:反向匹配,显示不包含指定模式的行。
- -n:显示匹配行的行号。
- -c:统计匹配行的数量。
awk - 处理和分析文本文件
用途:强大的文本处理工具,可以提取、格式化和计算文本数据。
常用功能:
- 字段提取:使用 $N 提取第 N 列。
- 条件过滤:使用条件语句过滤特定行。
- 计算操作:执行数学运算和字符串操作。
sed - 流编辑器
用途:用于对输入流(文件或管道)进行基本的文本转换和编辑操作。
常用功能:
- 替换文本:使用 s/old/new/ 语法替换文本。
- 删除行:使用 d 命令删除匹配的行。
- 插入或追加文本:使用 i 或 a 命令插入或追加文本。
05 压缩与归档命令
压缩和归档命令在 Linux 系统中用于减少文件占用的磁盘空间、方便传输以及备份数据。这些命令可以帮助您高效地管理和处理大量文件。
01 压缩工具
gzip - GNU zip 压缩工具
用途:将文件压缩为 .gz 格式。
常用选项:
- -d:解压缩文件。
- -k:保持原始文件不变(仅压缩)。
- -9:最高压缩比。
- -1:最低压缩比(最快)。
bzip2 - 更高效的压缩工具
用途:将文件压缩为 .bz2 格式,通常提供比 gzip 更高的压缩比。
常用选项:
- -d:解压缩文件。
- -k:保持原始文件不变(仅压缩)。
xz - 高压缩比的压缩工具
用途:将文件压缩为 .xz 格式,提供极高的压缩比,但速度较慢。
常用选项:
- -d:解压缩文件。
- -k:保持原始文件不变(仅压缩)。
02 归档工具
tar - 归档工具
用途:创建和管理归档文件(.tar),支持多种压缩格式(如 .tar.gz、.tar.bz2、.tar.xz)。
常用选项:
- -c:创建新的归档文件。
- -x:从归档文件中提取文件。
- -f:指定归档文件名。
- -z:使用 gzip 压缩或解压。
- -j:使用 bzip2 压缩或解压。
- -J:使用 xz 压缩或解压。
- -v:显示处理过程中的文件列表。
06 脚本编写与自动化
脚本编写是 Linux 系统管理和自动化任务的关键技能。通过编写 Shell 脚本,可以简化重复性任务、提高工作效率,并实现复杂的自动化流程。以下是关于 Shell 脚本基础和常用命令组合的详细介绍。
01 Shell 脚本基础
变量
- 定义变量:使用 = 定义变量,无需指定类型。
- 引用变量:使用 $ 符号引用变量值。
条件语句
- if 语句:根据条件执行不同的代码块。
- 常用操作符:-eq(等于)、-ne(不等于)、-gt(大于)、-lt(小于)等。
循环
- for 循环:遍历列表或范围内的元素。
- while 循环:当条件为真时重复执行代码块。
函数
- 定义函数:使用 function_name() 或 function function_name 定义函数。
- 调用函数:直接使用函数名调用。
02 常用命令组合
xargs - 构建和执行命令行
用途:从标准输入读取数据并构建命令行参数,常用于与其他命令结合使用。
常用选项:
- -n:指定每次传递给命令的参数数量。
- -I:指定替换字符串。
tee - 同时输出到文件和标准输出
用途:将命令输出同时写入文件和标准输出,便于日志记录和调试。
常用选项:
- -a:追加输出到文件而不是覆盖。
cut - 提取字段
用途:从每行文本中提取特定字段。
常用选项:
- -d:指定字段分隔符。
- -f:指定要提取的字段编号。
sort - 排序
用途:对文本文件中的行进行排序。
常用选项:
- -r:逆序排序。
- -n:按数值排序。
- -k:指定排序的列。
uniq - 过滤重复行
用途:去除相邻的重复行。
常用选项:
- -c:显示每行出现的次数。
- -d:仅显示重复的行。
版权声明:
作者:SE_YJ
链接:https://www.cnesa.cn/2761.html
来源:CNESA
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论