在 Linux 中,除了常用的基础命令,有一系列进阶命令可以帮助用户更有效地管理系统和执行复杂的任务。以下是一些常见的 Linux 进阶命令及其用法:
grep
:搜索文本并打印匹配的行。
grep 'pattern' filename
awk
:用于模式扫描和处理语言,非常强大的文本分析工具。
awk '/pattern/ { actions }' filename
sed
:流编辑器,用于执行文本替换、删除、插入等操作。
sed 's/old/new/g' filename
top
:实时显示系统进程和资源占用情况。htop
:比 top
更丰富的交互式进程查看器。iostat
:报告 CPU 统计和输入/输出统计。vmstat
:报告虚拟内存统计。netstat
:显示网络连接、路由表、接口状态等。nmap
:网络探索和安全审计。
nmap -v -A target_ip
tcpdump
:命令行下的包分析工具。
tcpdump -i eth0
ss
:替代 netstat
的另一个工具,用于展示 socket 统计信息。
systemctl
:控制 systemd
系统和服务管理器。
systemctl status serviceName
journalctl
:查看由 systemd
处理的日志。
journalctl -u nginx.service
usermod
:修改用户账户属性。
usermod -aG groupname username
fdisk
:磁盘分区工具。
du
:显示目录或文件的磁盘使用情况。
du -sh /path/to/directory
df
:显示文件系统的总空间、已使用空间和可用空间。
df -h
tar
:创建和解压 tar 归档。
tar -cvzf archive_name.tar.gz /path/to/directory
rsync
:用于备份和同步文件和目录。
rsync -av --progress source/ destination/
chmod
:改变文件或目录的访问权限。
chown
:改变文件或目录的所有者和组。
openssl
:强大的安全套接字层密码库。
openssl genrsa -out private.key 2048
firewall-cmd
:管理 firewalld
服务的命令行界面。
git
:版本控制系统,用于追踪代码变更。git clone repository_url
apt
/ yum
/ dnf
/ zypper
/ pacman
:根据你的发行版,使用对应的包管理器来安装、更新、删除软件包。screen
或 tmux
:终端复用器,可以让你在一个窗口中使用多个终端会话。strace
:跟踪系统调用。lsof
:列出打开的文件。find
:在目录树中搜索文件。这些进阶命令可以帮助你更深入地管理和使用 Linux 系统。掌握它们将使你在处理系统任务时更加高效和专业。不过,使用这些命令时应当小心,尤其是那些能够修改系统设置或影响系统稳定性的命令。在执行任何具有破坏性的命令之前,最好查看相关的手册页(通过 man
命令),以确保理解其工作原理和可能的后果。