菜鸟科技网

Linux实用命令有哪些必备技巧?

Linux 作为一款功能强大的开源操作系统,其命令行工具是提升工作效率的核心,熟练掌握实用命令能让你更高效地管理文件、监控系统、处理文本等,以下从文件管理、系统监控、文本处理、网络工具和权限管理五个维度,详细介绍 Linux 常用命令及其使用场景。

Linux实用命令有哪些必备技巧?-图1
(图片来源网络,侵删)

文件与目录管理

文件操作是 Linux 最基础的技能,lscdcpmvrm 是五大核心命令。ls -la 可查看文件的详细信息(权限、所有者、大小、修改时间),其中隐藏文件以 开头;cd - 能快速返回上一次所在的目录,cd ~ 切换至当前用户家目录,复制和移动文件时,cp -r 用于递归复制目录(如 cp -r /home/user/docs /backup/),mv 不仅可移动文件,还能重命名(如 mv old.txt new.txt),删除操作需谨慎,rm -rf 强制递归删除(无提示),建议新手先用 rm -i 开启交互式确认。

mkdir 创建目录时,mkdir -p 可自动创建多级父目录(如 mkdir -p /path/to/subdir),避免因父目录不存在而报错。touch 快速创建空文件(如 touch file.txt),cat 查看文件内容(适合小文件),less 则适合大文件分页浏览(支持上下翻页和关键词搜索 /keyword)。find 命令是文件搜索利器,find /home -name "*.log" -mtime +7 可在 /home 目录下查找 7 天前修改过的 .log 文件,-name 支持通配符,-mtime 按修改时间筛选。

系统与进程监控

了解系统状态是运维和日常使用的关键。top 动态显示进程资源占用,按 P 按 CPU 排序、M 按内存排序,top -i 可过滤空闲进程。htoptop 的增强版(需安装),支持彩色显示、进程树和鼠标操作,更直观,磁盘空间方面,df -h 查看分区使用情况(-h 以易读单位显示),du -sh * 统计当前目录下各文件/目录大小(-s 仅汇总总数)。

系统信息可通过 uname -a 查看内核版本及架构,uptime 显示系统运行时长和负载均值(1/5/15 分钟),free -h 查看内存使用情况(区分 buff/cache 和可用内存),进程管理中,ps -efps aux 列出所有进程,grep 过滤目标进程(如 ps -ef | grep nginx);kill -9 PID 强制终止进程,killall nginx 通过进程名终止所有匹配进程。

Linux实用命令有哪些必备技巧?-图2
(图片来源网络,侵删)

文本处理与搜索

Linux 文本处理命令堪称“神器”,grep 是核心工具。grep "error" /var/log/syslog 在日志中搜索包含 "error" 的行,-i 忽略大小写,-v 反向匹配(如排除 "info" 日志),-c 统计匹配行数。sed 流编辑器用于文本替换,sed 's/old/new/g' file.txt 全局替换 "old" 为 "new"(原文件不变,需重定向保存)。awk 按列处理文本,awk '{print $1, $3}' file.txt 提取每行的第 1、3 列,-F: 可指定分隔符(如处理 /etc/passwd 时用 awk -F: '{print $1}' 提取用户名)。

sort 对文本行排序,-n 按数字排序,-r 降序,-u 去重;uniq 去除相邻重复行(需先 sort);wc 统计行数、字数、字节数(-l 仅统计行数)。tar 是压缩打包工具,tar -czvf archive.tar.gz /path/to/dir 打包并 gzip 压缩,-x 解压,-v 显示过程,-f 指定文件名。

网络配置与诊断

网络命令用于排查连接问题和配置服务。ping 测试网络连通性(ping -c 4 baidu.com 发送 4 个包),traceroute 追踪路由路径(需安装 traceroute 包),netstat -tuln 查看监听端口(-t TCP、-u UDP、-l 仅监听、-n 不解析域名)。ssnetstat 的替代品(默认安装),ss -tulnp 显示进程 ID 和名称,更高效。

文件传输中,scp 安全复制文件(scp -r /local user@remote:/remote),rsync 增量同步(rsync -avz /local user@remote:/remote-z 压缩传输)。wgetcurl 下载文件(wget https://example.com/file.zipcurl -O url 保存原文件名),curl 还支持 HTTP 请求(如 curl -X POST -d "data" url)。

Linux实用命令有哪些必备技巧?-图3
(图片来源网络,侵删)

权限与用户管理

Linux 权限分为读(r)、写(w)、执行(x),通过 chmod 修改,chown 修改所有者。chmod 755 file.txt 设置所有者 rwx、组和其他用户 rx;chmod u+x script.sh 为所有者添加执行权限。chown user:group file.txt 更改文件所有者和所属组,-R 递归修改目录权限。

用户管理中,useradd -m username 创建用户并创建家目录,passwd username 设置密码;userdel -r username 删除用户及其家目录;su - username 切换用户(加载环境变量),sudo command 以管理员权限执行命令(需配置 /etc/sudoers)。groupadd groupname 创建组,usermod -aG groupname username 将用户添加到组。

相关问答FAQs

Q1:如何查看 Linux 系统的发行版信息?
A:可通过以下命令查看:

  • lsb_release -a:显示 LSB(Linux Standard Base)信息,适用于 Ubuntu、Debian 等发行版;
  • cat /etc/os-release:输出详细的发行版标识(如 Ubuntu 20.04、CentOS 7),通用性最强;
  • cat /etc/redhat-release:仅适用于 RedHat 系发行版(如 CentOS、Fedora)。

Q2:如何查找并删除指定类型的文件(如 7 天前的 .log 文件)?
A:结合 findxargs-exec 实现:

  • 方法1:find /path -name "*.log" -mtime +7 -print0 | xargs -0 rm -f-print0xargs -0 处理含空格的文件名);
  • 方法2:find /path -name "*.log" -mtime +7 -exec rm -f {} \;( 替换为文件名,\; 结束命令)。
    注意:rm -f 无提示删除,建议先运行 find 命令不加 -exec-rm,确认文件列表无误后再执行删除。
分享:
扫描分享到社交APP
上一篇
下一篇