Linux 基础命令分类笔记

Linux命令行的强大之处在于,它提供了大量小而专的工具,通过组合这些工具可以完成非常复杂的任务。

1. 获取帮助 (Getting Help)

当你忘记命令如何使用时,学会求助是最重要的第一步。

命令 用途说明 使用方式
man 显示命令的手册页(manual)。最全面、最官方的帮助文档。 man ls (查看ls命令的手册)
(按 q 退出)
[命令] --help 显示命令自带的简易帮助信息,通常比man更简洁。 ls --help (查看ls命令的帮助)
info 提供比 man 更详细的超链接式文档(不常用)。 info coreutils

2. 文件与目录导航 (File & Directory Navigation)

在文件系统中移动和查看位置。

命令 用途说明 使用方式
pwd Print Working Directory,显示当前所在的目录路径。 pwd
ls List,列出目录中的文件和子目录。 ls (列出当前目录内容)
ls -l (以长格式显示,包含权限、所有者、大小等)
ls -a (显示所有文件,包括以.开头的隐藏文件)
ls -lh (人性化显示文件大小,如KB, MB)
ls /home/user (列出指定目录的内容)
cd Change Directory,切换当前工作目录。 cd /var/log (切换到绝对路径)
cd Documents (切换到当前目录下的子目录)
cd .. (切换到上一级目录)
cd ~cd (切换到当前用户的家目录)
cd - (切换到上一次所在的目录)

3. 文件与目录管理 (File & Directory Management)

创建、复制、移动、删除文件和目录。

命令 用途说明 使用方式
touch 创建一个空文件,或者更新已有文件的时间戳。 touch newfile.txt (创建一个名为 newfile.txt 的空文件)
mkdir Make Directory,创建一个新目录。 mkdir my_project
mkdir -p /path/to/deep/dir (-p可以递归创建多层不存在的目录)
cp Copy,复制文件或目录。 cp source.txt destination.txt (复制文件)
cp source.txt /path/to/dir/ (将文件复制到目录)
cp -r source_dir/ destination_dir/ (-r递归复制整个目录及其内容)
mv Move,移动文件/目录,或者重命名。 mv oldname.txt newname.txt (重命名文件)
mv file.txt /new/location/ (移动文件到新位置)
mv my_dir/ /other/place/ (移动目录)
rm Remove,删除文件或目录。(此操作不可逆,请谨慎使用!) rm file.txt (删除文件)
rm -r my_dir/ (-r递归删除目录及其所有内容)
rm -f file.txt (-f强制删除,不提示)
rm -rf my_dir/ (强制递归删除目录,极度危险!)
ln Link,创建链接文件(类似Windows的快捷方式)。 ln -s /path/to/original link_name (-s创建软链接/符号链接)

4. 查看文件内容 (Viewing File Content)

查看文本文件的内容,而不启动编辑器。

命令 用途说明 使用方式
cat Concatenate,一次性显示整个文件的内容。 cat file.txt
less 分页查看文件内容,功能比more更强大,可以前后翻页。 less file.txt (使用箭头键、PageUp/Down翻页,按/搜索,按q退出)
more 分页查看文件内容,但只能向下翻页。 more file.txt (按空格键翻页,按q退出)
head 显示文件的开头部分,默认显示前10行。 head file.txt
head -n 20 file.txt (显示前20行)
tail 显示文件的结尾部分,默认显示后10行。常用于查看日志。 tail file.txt
tail -n 50 file.txt (显示后50行)
tail -f /var/log/syslog (-f持续跟踪文件更新,实时查看新内容)

5. 搜索文件与内容 (Searching)

在文件系统或文件内容中查找信息。

命令 用途说明 使用方式
find 在目录树中按各种条件(名称、大小、时间等)查找文件。 find /home -name "*.txt" (在/home目录查找所有.txt文件)
find . -type d (查找当前目录下的所有子目录)
find / -size +100M (查找根目录下大于100MB的文件)
grep Global Regular Expression Print,在文件内容中搜索匹配指定模式的行。 grep "error" /var/log/syslog (在文件中搜索包含”error”的行)
grep -r "my_function" /project/ (-r递归搜索目录中所有文件)
grep -i "hello" file.txt (-i忽略大小写)
grep -v "debug" file.txt (-v反向搜索,显示不包含模式的行)
which 查找一个命令的可执行文件所在的路径。 which ls (会输出 /bin/ls)
locate 快速查找文件,它搜索一个预先建立的数据库。 locate my_file.conf (比find快,但可能不是最新的)
updatedb (手动更新locate的数据库)

6. 权限管理 (Permissions Management)

控制文件和目录的访问权限。

命令 用途说明 使用方式
chmod Change Mode,修改文件或目录的权限。 chmod 755 script.sh (使用数字模式,r=4, w=2, x=1)
chmod u+x script.sh (给所有者u增加执行x权限)
chmod g-w file.txt (给所属组g去除写w权限)
chmod -R 777 /data (-R递归修改目录内所有文件权限)
chown Change Owner,修改文件或目录的所有者和所属组。 chown user:group file.txt (同时修改所有者和组)
chown user file.txt (只修改所有者)
chown -R user:group /dir (-R递归修改)

7. 系统信息与进程管理 (System Info & Process Management)

查看系统状态和管理正在运行的程序。

命令 用途说明 使用方式
ps Process Status,显示当前用户的活动进程。 ps
ps aux (显示系统中所有进程的详细信息)
ps -ef (与aux类似,格式稍有不同)
top 实时动态地显示系统进程和资源占用情况(CPU、内存等)。 top (按q退出,按P按CPU排序,M按内存排序)
kill 终止一个进程。 kill [PID] (给进程发送终止信号,PID是进程ID)
kill -9 [PID] (强制杀死进程,-9是SIGKILL信号)
df Disk Free,显示磁盘空间使用情况。 df -h (-h以人性化单位显示)
du Disk Usage,显示文件或目录占用的磁盘空间大小。 du -sh /path/to/dir (-s汇总总大小, -h人性化显示)
free 显示系统内存和交换空间的使用情况。 free -h (-h以人性化单位显示)
uname 显示系统内核和操作系统信息。 uname -a (显示所有信息)

8. 网络命令 (Networking)

用于网络诊断和配置。

命令 用途说明 使用方式
ping 测试与另一台主机的网络连通性。 ping google.com (按Ctrl+C停止)
ip 显示和管理路由、网络设备、策略路由和隧道(新一代网络工具)。 ip addr showip a (查看IP地址)
ip route (查看路由表)
ifconfig 配置和显示网络接口信息(较旧,ip命令是其替代品)。 ifconfig
ssh Secure Shell,远程安全登录到另一台Linux主机。 ssh user@hostname
scp Secure Copy,通过SSH安全地在本地和远程主机之间复制文件。 scp localfile.txt user@remote:/path/ (本地到远程)
scp user@remote:/path/remotefile.txt . (远程到本地)
wget / curl 从网络上下载文件。curl功能更强大。 wget http://example.com/file.zip
curl -o file.html http://example.com

9. 用户与权限提升 (User & Privilege Escalation)

管理用户账户和获取管理员权限。

命令 用途说明 使用方式
sudo Superuser do,以管理员(root)权限执行单个命令。 sudo apt update
su Switch User,切换用户身份,默认切换到root。 su - (切换到root用户并加载其环境)
whoami 显示当前登录的用户名。 whoami
passwd 修改用户密码。 passwd (修改当前用户密码)
sudo passwd username (管理员修改其他用户密码)

10. 归档与压缩 (Archiving & Compression)

打包和压缩文件以方便存储和传输。

命令 用途说明 使用方式
tar Tape Archiver,打包多个文件/目录到一个.tar文件中(归档)。 tar -cvf archive.tar /path/to/dir (c:创建, v:详细, f:文件)
tar -xvf archive.tar (x:解包)
gzip 压缩或解压文件(通常与tar结合使用)。 gzip file (压缩成file.gz)
gunzip file.gz (解压)
tar (组合) tar通常与压缩命令结合,是最常见的用法。 打包并压缩: tar -czvf archive.tar.gz /path/to/dir (z: 使用gzip压缩)
解压并解包: tar -xzvf archive.tar.gz
zip / unzip 创建和解压.zip格式的压缩文件。 zip -r archive.zip /my_dir/
unzip archive.zip

11. 管道与重定向 (Piping & Redirection)

这是Linux命令行的精髓,用于组合命令。

符号/命令 用途说明 使用方式
> 输出重定向:将命令的输出写入文件(会覆盖文件内容)。 ls -l > file_list.txt
>> 追加重定向:将命令的输出追加到文件末尾。 echo "New log entry" >> app.log
I 管道 (Pipe):将一个命令的输出作为另一个命令的输入。 `ps aux grep “nginx”(查找nginx进程) <br>cat access.log grep “404” wc -l` (统计日志中404错误的数量)

希望这份笔记能对您有所帮助!掌握这些基础命令是高效使用Linux系统的关键。最好的学习方式是在实践中不断使用它们。