Linux 常用命令非常丰富,涵盖了文件操作、系统管理、网络配置等多个方面。以下是一些常见的 Linux 命令分类介绍:
一、文件和目录操作
1. 查看文件和目录
• ls:列出目录内容。常用选项:
• -l:以长格式显示文件和目录的详细信息,包括权限、所有者、大小等。
• -a:显示所有文件和目录,包括隐藏的(以 . 开头的)。
• -h:以易读的格式显示文件大小(如 K、M、G)。
• 示例:ls -lh 可以以易读的格式显示当前目录下文件和目录的详细信息。
• pwd:显示当前工作目录的绝对路径。
• tree:以树状图显示目录结构。需要先安装 tree 工具,可以使用 sudo apt-get install tree(在基于 Debian 的系统中)等命令安装。
2. 创建文件和目录
• touch:创建空文件或更新文件的时间戳。例如,touch newfile.txt 会在当前目录下创建一个名为 newfile.txt 的空文件。
• mkdir:创建目录。常用选项:
• -p:递归创建目录,即如果父目录不存在,会一并创建。例如,mkdir -p dir1/dir2/dir3 会创建 dir1、dir1/dir2 和 dir1/dir2/dir3 三个目录。
3. 删除文件和目录
• rm:删除文件。常用选项:
• -f:强制删除,不提示确认。
• -r:递归删除目录及其内容。
• 示例:rm -rf dir1 会强制递归删除 dir1 目录及其所有内容,需谨慎使用,因为一旦执行,文件和目录将无法恢复。
• rmdir:删除空目录。
4. 移动和重命名文件及目录
• mv:移动文件或目录,也可以用于重命名。例如,mv oldname.txt newname.txt 会将 oldname.txt 重命名为 newname.txt;mv file.txt dir1/ 会将 file.txt 移动到 dir1 目录下。
5. 复制文件和目录
• cp:复制文件或目录。常用选项:
• -r:递归复制目录及其内容。
• -p:保留文件的权限、所有者、时间戳等属性。
• 示例:cp -rp dir1 dir2 会递归复制 dir1 目录到 dir2,并保留文件属性。
6. 查看文件内容
• cat:显示文件内容。可以同时查看多个文件的内容,例如 cat file1.txt file2.txt。
• more 和 less:分页查看文件内容。less 比 more 更灵活,支持上下翻页等操作。
• head 和 tail:分别查看文件的开始部分和结尾部分。默认显示文件的前 10 行或后 10 行。常用选项 -n 可以指定显示的行数,例如 head -n 20 file.txt 显示文件的前 20 行。
二、文本处理
1. 查找文本内容
• grep:在文件中搜索匹配特定模式的文本行。常用选项:
• -i:忽略大小写。
• -r 或 -R:递归搜索目录中的文件。
• -n:显示匹配行的行号。
• 示例:grep -i "hello" file.txt 会在 file.txt 中搜索包含 “hello”(不区分大小写)的行。
2. 编辑文本内容
• sed:流编辑器,用于对文本进行基本的编辑操作,如替换、删除等。例如,sed 's/old/new/g' file.txt 会将 file.txt 中的 “old” 替换为 “new”。
• awk:强大的文本处理工具,可以进行复杂的文本分析和处理。例如,awk '{print $1}' file.txt 会打印 file.txt 中每行的第一个字段。
3. 排序和比较文本
• sort:对文本文件中的行进行排序。常用选项:
• -n:按照数值顺序排序。
• -r:反向排序。
• 示例:sort -n numbers.txt 会按照数值顺序对 numbers.txt 中的行进行排序。
• diff:比较两个文件的差异。例如,diff file1.txt file2.txt 会显示 file1.txt 和 file2.txt 之间的不同之处。
三、系统管理
1. 用户和权限管理
• whoami:显示当前登录的用户名。
• who:显示当前登录的用户信息。
• useradd 和 userdel:分别用于添加和删除用户。
• passwd:设置或更改用户密码。
• chmod:更改文件或目录的权限。权限分为读(r)、写(w)、执行(x),可以针对所有者(u)、组(g)和其他用户(o)分别设置。例如,chmod u+x file.sh 会给文件所有者添加执行权限。
• chown 和 chgrp:分别用于更改文件或目录的所有者和所属组。
2. 系统信息和资源管理
• uname:显示系统信息,如内核版本等。常用选项 -a 可以显示所有系统信息。
• df:显示文件系统的磁盘空间使用情况。常用选项 -h 以易读的格式显示。
• du:显示文件或目录的磁盘使用情况。常用选项 -sh 可以以易读的格式显示指定目录的总大小。
• top 和 htop:实时显示系统中占用资源最多的进程。htop 的界面更友好,但需要先安装。
• free:显示系统的内存使用情况。常用选项 -h 以易读的格式显示。
3. 关机和重启
• shutdown:关机或重启系统。常用选项:
• -h:关机。
• -r:重启。
• -c:取消关机或重启操作。
• 示例:shutdown -h now 立即关机;shutdown -r +10 10 分钟后重启。
• reboot:重启系统。
四、网络操作
1. 网络连接和配置
• ifconfig 或 ip:显示或配置网络接口。ifconfig 在一些新系统中可能已被 ip 命令取代。
• ping:测试网络连接。例如,ping www.example.com 会向 www.example.com 发送 ICMP 回显请求,检测网络连通性。
• netstat 或 ss:显示网络连接、路由表、接口统计等信息。ss 是 netstat 的现代替代品。
• traceroute:显示到目标主机的网络路径和延迟。
2. 远程连接
• ssh:安全外壳协议,用于远程登录和管理服务器。例如,ssh username@hostname 会使用用户名 username 登录到主机 hostname。
• scp:安全拷贝,用于在服务器之间安全地复制文件。例如,scp file.txt username@hostname:/path/to/destination 会将本地的 file.txt 复制到远程主机的指定路径。
五、其他常用命令
1. 历史命令
• history:显示用户之前执行过的命令历史。可以使用上下箭头在历史命令中切换,快速重新执行之前输入过的命令。
2. 帮助和文档
• man:显示命令的手册页。例如,man ls 会显示 ls 命令的手册页,详细介绍其用法和选项。
• info:类似于 man,但提供了更丰富的文档格式和交互功能。