一、 文件与目录操作 (最核心)
这是日常使用最频繁的命令,用于浏览、创建、删除和管理文件。
**
pwd
**:显示你当前所在目录的绝对路径。**
ls
**:列出当前目录下的文件和子目录。常用参数:
-l
以详细信息格式显示,-a
显示所有文件(包括隐藏文件),-h
以易读格式显示文件大小。
**
cd
**:切换目录。用法:
cd /path/to/dir
切换到绝对路径;cd ..
返回上一级目录;cd ~
或直接cd
返回用户家目录。
**
mkdir
**:创建新目录。常用参数:
-p
可递归创建多层不存在的目录(如mkdir -p project/src
)。
**
touch
**:创建一个新的空文件,或更新一个已有文件的最后修改时间。**
cp
**:复制文件或目录。用法:
cp source_file target_file
;复制目录需加-r
参数(递归复制)。
**
mv
**:移动文件或目录,也可用于重命名。用法:
mv old_name new_name
(重命名);mv file /another/path/
(移动)。
**
rm
**:删除文件或目录。警告:此命令删除后一般难以恢复!
常用参数:
-r
递归删除目录及其内容,-f
强制删除不提示。
**
cat
**:在终端中查看整个文件的内容(适合小文件)。**
less
/ more
**:分页查看文件内容,适合阅读大文件。可用空格键翻页,按q
键退出。less
比more
功能更强大。**
head
**:查看文件的开头部分(默认10行),可用-n
指定行数(如head -n 20 file.log
)。**
tail
:查看文件的末尾部分(默认10行)。-f
参数极其重要**,可以实时追踪文件的新增内容(如tail -f application.log
),是查看日志的神器。
二、 系统信息与进程管理
用于查看系统状态、资源使用情况和管理运行中的程序。
**
ps
**:查看当前进程的快照。常用用法:
ps aux
或ps -ef
,可查看系统上所有进程的详细信息。
**
top
:动态实时地显示系统中各个进程的资源(CPU、内存)占用情况,是系统性能监测的核心工具。它的增强版叫 htop
**(需安装),界面更友好。**
kill
**:根据进程号(PID)来结束一个进程。用法:先用
ps
或top
找到目标进程的PID,然后执行kill PID
。如果普通命令无法结束,可加-9
参数强制杀死(kill -9 PID
)。
**
df
**:查看磁盘空间的使用情况。一定要加
-h
参数(如df -h
),它以 G、M 等易读的单位显示,否则是字节数。
**
du
**:查看特定文件或目录的磁盘使用空间。常用用法:
du -sh /path/to/dir
,-s
显示总和,-h
易读格式。
**
free
**:查看系统内存和交换空间(swap)的使用情况。同样,加
-h
参数(free -h
)以便于阅读。
三、 权限管理
Linux 是一个多用户系统,权限管理至关重要。
**
sudo
**:以超级管理员(root)的身份来执行一条命令。在命令前加上sudo
,并输入当前用户的密码,就可以临时获得最高权限(如sudo apt update
)。**
chmod
**:修改文件或目录的权限(读、写、执行)。常用简单用法:
chmod +x script.sh
给文件添加“可执行”权限。
**
chown
**:修改文件或目录的所有者和所属用户组。用法:
chown new_owner:new_group filename
。
四、 网络操作
用于检查网络连接和下载文件。
**
ping
**:测试与另一台网络主机是否连通。用法:
ping example.com
或ping 8.8.8.8
。按Ctrl+C
停止。
**
wget
**:一个非常强大的命令行下载工具。用法:
wget http://example.com/file.iso
。
**
curl
**:另一个强大的命令行工具,用于传输数据,常用于测试 API 或下载文件。用法:
curl http://example.com
。
**
ssh
**:通过安全的加密连接,远程登录到另一台 Linux 服务器。用法:
ssh username@host_ip
。
五、 压缩与解压
用于处理常见的压缩文件包。
**
tar
**:最常用的归档工具,常与 gzip 压缩结合(文件后缀为.tar.gz
或.tgz
)。压缩:
tar -czvf archive_name.tar.gz /path/to/dir_or_file
解压:
tar -xzvf archive_name.tar.gz
参数解释:
-c
创建,-x
解压,-z
处理 gzip,-v
显示过程,-f
指定文件名。
**
zip
/ unzip
**:处理 Zip 格式的压缩包,跨平台兼容性好。压缩:
zip archive_name.zip file.txt
解压:
unzip archive_name.zip
必须掌握的核心技巧
**
--help
**:几乎所有的命令都支持这个参数,可以快速查看该命令的用法和参数说明(如ls --help
)。**
man
**:查看命令的完整官方手册,内容非常详尽(如man ls
),按q
键退出。Tab 键补全:输入命令、文件名或路径时,按 Tab 键可以自动补全。如果按两次Tab,会列出所有可能的选择。这是提高效率最重要的技巧!
上下箭头键:可以快速调出之前执行过的命令。
**管道
|
**:将一个命令的输出作为另一个命令的输入。经典示例:
ps aux | grep nginx
(在所有进程信息中查找和 "nginx" 相关的行)。