菜鸟科技网

Linux命令大全详解,核心命令有哪些?

Linux命令是操作系统与用户交互的核心工具,掌握常用命令能极大提升工作效率,以下从文件管理、系统信息、文本处理、网络工具、进程管理、软件安装六大类别,详解120余个常用命令及其核心参数,并辅以示例说明。

Linux命令大全详解,核心命令有哪些?-图1
(图片来源网络,侵删)

文件与目录管理命令

文件操作是Linux最基础的功能,以下命令覆盖创建、复制、移动、删除及权限修改等场景。

命令 参数示例 功能说明
ls ls -la /home 列出目录内容,-l显示详细信息,-a隐藏文件
pwd pwd 显示当前工作目录路径
cd cd .. / cd ~ 切换目录,返回上级,切换至用户主目录
mkdir mkdir -p /test/dir 创建目录,-p递归创建多级目录
touch touch file.txt 创建空文件或更新文件时间戳
cp cp -r /src /dst 复制文件/目录,-r递归复制目录
mv mv old.txt new.txt 移动文件/目录或重命名
rm rm -rf /test 删除文件/目录,-r递归删除,-f强制删除(不提示)
ln ln -s target.txt link.txt 创建链接文件,-s创建软链接(符号链接)
find find / -name "*.log" 查找文件,-name按名称匹配,支持通配符
locate locate config.conf 快速查找文件(依赖updatedb数据库)
du du -sh /var 查看目录大小,-s汇总显示,-h以人类可读格式(KB/MB/GB)
df df -h /dev/sda1 查看磁盘分区使用情况,-h人性化显示

系统信息与监控命令

了解系统状态是运维和开发的基础,以下命令用于查看硬件、系统负载及用户信息。

命令 参数示例 功能说明
uname uname -a 显示系统所有信息(内核版本、主机名等)
top top -u username 实时显示进程状态,-u指定用户
htop htop 交互式进程管理工具(比top更直观,需安装)
free free -h 查看内存使用情况,-h人性化显示
df df -i 查看inode使用情况(避免inode耗尽问题)
ps ps -ef / ps aux 查看当前进程,-ef显示全格式,aux显示详细CPU/内存占用
kill kill -9 1234 终止进程,-9强制终止
pkill pkill -f nginx 按名称终止进程(支持模糊匹配)
jobs jobs -l 查看后台任务,-l显示进程ID
bg/fg bg %1 / fg %1 将后台任务调至前台/继续执行
uptime uptime 显示系统运行时间及负载(1/5/15分钟平均负载)
date date "+%Y-%m-%d %H:%M:%S" 设置或显示系统时间,后为格式化字符串
cal cal -y 2023 显示日历,-y显示全年
who who -uH 显示当前登录用户及终端信息,-H
last last reboot 查看系统重启记录或用户登录历史

文本处理与搜索命令

Linux文本处理能力强大,以下命令可用于编辑、过滤、分析文本文件。

命令 参数示例 功能说明
cat cat file.txt 查看文件内容(适合小文件)
more/less less file.txt 分页查看文件(less支持上下翻页、搜索)
head/tail tail -f /var/log/nginx.log 查看文件前/后N行,-f实时追踪文件更新(日志监控常用)
grep grep "error" log.txt -n 文本搜索,-n显示行号,-i忽略大小写,-v反向匹配
sed sed 's/old/new/g' file.txt 流编辑器,替换文本(s替换,g全局替换)
awk awk '{print $1,$NF}' file.txt 文本分析工具,按列处理($1第一列,$NF最后一列)
sort sort -n file.txt 排序,-n按数字排序,-r倒序,-k按指定列排序
uniq sort file.txt | uniq -c 去重,-c统计重复行数(需先排序)
wc wc -l /etc/passwd 统计文件行数/单词数/字节数,-l行数,-w单词数,-c字节数
vim vim file.txt 文本编辑器,i进入编辑模式,wq保存退出,q!强制退出

网络配置与调试命令

网络操作是服务器管理的关键,以下命令涵盖连接测试、信息查看及服务管理。

Linux命令大全详解,核心命令有哪些?-图2
(图片来源网络,侵删)
命令 参数示例 功能说明
ping ping -c 4 8.8.8.8 测试网络连通性,-c发送包数量
ifconfig ifconfig eth0 up 配置网络接口(需安装net-tools),up/down启用/禁用接口
ip ip addr show eth0 现代网络配置工具(替代ifconfig),查看/设置IP地址
netstat netstat -tuln 查看网络端口状态,-tTCP,-uUDP,-l监听端口,-n显示数字IP
ss ss -tuln 替代netstat的工具,显示更快的端口信息
curl curl -I http://example.com 发送HTTP请求,-I仅获取响应头
wget wget -c http://example.com/file.zip 下载文件,-c断点续传
ssh ssh user@192.168.1.100 -p 22 远程登录服务器,-p指定端口
scp scp -r /local user@remote:/dst 安全复制文件/目录(基于SSH)
traceroute traceroute 8.8.8.8 跟踪数据包路由路径
nslookup nslookup www.baidu.com 查询域名解析信息

软件安装与压缩命令

Linux软件管理和文件压缩是日常操作的核心,以下命令覆盖包管理及压缩格式。

命令 参数示例 功能说明
apt apt install nginx / apt update Debian/Ubuntu包管理工具,安装/更新软件
yum yum install httpd / yum clean all CentOS/RHEL包管理工具,安装/清理缓存
dnf dnf upgrade python3 Fedora/CentOS 8+新包管理工具(功能同yum)
tar tar -czvf archive.tar.gz /src 打包压缩,-c创建,-zgzip压缩,-x解压,-v显示过程,-f指定文件名
zip/unzip zip -r archive.zip /src 创建zip压缩包,unzip archive.zip解压
gzip/gunzip gzip file.txt 压缩单个文件(.gz),gunzip解压
rpm rpm -ivh package.rpm RPM包管理(CentOS),-i安装,-v显示信息,-h哈希校验
dpkg dpkg -i package.deb Debian包管理(Ubuntu),安装deb文件

其他实用命令

以下命令涵盖权限管理、用户管理及系统维护等高频操作。

命令 参数示例 功能说明
chmod chmod 755 script.sh 修改文件权限,755(所有者读写执行,其他用户读执行)
chown chown user:group file.txt 修改文件所有者/所属组
su/sudo sudo apt update 切换用户(su -切换至root),sudo以管理员权限执行命令
history history -c 查看命令历史,-c清空历史记录
alias alias ll='ls -la' 设置命令别名,永久需写入~/.bashrc
crontab crontab -e 编辑定时任务(格式:分 时 日 月 周 命令)
systemctl systemctl restart nginx 管理系统服务(启动/停止/重启/启用开机自启)
journalctl journalctl -u nginx 查看系统服务日志(配合systemctl使用)

相关问答FAQs

Q1:Linux中cpmvrm命令误操作导致文件丢失,如何恢复?
A:若文件未被覆盖,可通过以下方式尝试恢复:

  1. 从回收站恢复:若使用mv将文件移至~/.local/share/Trash,可通过trash-list查看并trash-restore恢复(需安装trash-cli工具)。
  2. 通过extundelete工具恢复:针对ext4文件系统,安装后执行extundelete /dev/sda1 --restore-inode inode_num(需先卸载分区或以只读模式挂载)。
  3. 使用testdisk/photorec:若文件系统损坏,可通过工具扫描并恢复文件。
    预防措施:关键操作前使用cp -b创建备份文件,或通过aliasrm添加mv到回收站的功能(如alias rm='mv -t ~/.local/share/Trash --backup=t')。

Q2:如何查看Linux系统当前所有活跃的网络连接及其对应的进程?
A:可通过ssnetstat结合grep过滤,推荐使用ss(性能更优):

Linux命令大全详解,核心命令有哪些?-图3
(图片来源网络,侵删)
# 查看所有TCP/UDP连接,显示进程ID和名称
ss -tulnp | grep -E 'tcp|udp'
# 查看指定端口(如80)的连接
ss -tulnp | grep ':80'
# 查看所有ESTABLISHED状态的连接
ss -tulnp | grep 'ESTAB'

参数说明:-tTCP、-uUDP、-l监听端口、-n数字IP、-p显示进程ID/名称,若需进一步分析进程,可通过ps -ef | grep <PID>查看进程详情。

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