每个开发人员都需要知道的 50 个 Linux 命令(附示例)

2025-05-25

每个开发人员都需要知道的 50 个 Linux 命令(附示例)

以下是每个开发人员都应该知道的 50 个有用的 Linux 命令,以及每个命令的简要说明和示例:

购买 Linux 命令速查表 (PDF)

  1. ls- 列出目录的内容。

    • 例如:ls将列出当前目录的内容。ls /usr/local将列出目录的内容/usr/local
  2. pwd- 打印当前工作目录。

    • 例如:pwd将打印当前工作目录的完整路径。
  3. cd- 更改当前工作目录。

    • 例如:cd /usr/local将当前工作目录更改为/usr/local
  4. mkdir- 创建新目录。

    • 例如:mkdir mydir将创建一个名为的新目录mydir
  5. mv- 移动文件或目录。

    • 示例:mv file.txt /usr/local/将文件移动file.txt/usr/local目录。
  6. cp- 复制文件或目录。

    • 示例:cp file.txt /usr/local/将文件复制file.txt/usr/local目录。
  7. rm- 删除文件或目录。

    • 例如:rm file.txt将删除文件file.txt,而rm -r mydir将删除目录mydir及其所有内容。
  8. touch- 创建一个新的空文件。

    • 例如:touch file.txt将创建一个名为 的新空文件file.txt
  9. ln- 创建文件或目录的链接。

    • 示例:将在当前目录中创建一个名为ln -s /usr/local/file.txt file.txt的符号链接。/usr/local/file.txtfile.txt
  10. cat- 显示文件的内容。

    • 示例:将在终端中cat file.txt显示文件的内容。file.txt
  11. clear- 清除终端屏幕。

    • 示例:clear将清除终端屏幕的内容。
  12. echo- 将消息打印到终端。

    • 示例:echo "Hello, world!"将消息打印"Hello, world!"到终端。
  13. less- 使用分页查看文件。

    • 示例:将允许您一次less file.txt查看一页的内容。file.txt
  14. man- 显示命令的手册页。

    • 示例:man ls将显示该命令的手册页ls,其中描述了其用法和选项。
  15. uname- 显示有关当前系统的信息。

    • 示例:uname -a将显示当前系统的所有信息,包括内核版本和机器硬件名称。
  16. whoami- 显示当前用户。

    • 例如:whoami将显示当前用户的用户名。
  17. tar- 存档并压缩文件和目录。

    • 示例:tar -czf archive.tar.gz directory/将创建一个名为“archive.tar.gz来自目录内容的压缩档案” directory
  18. grep- 在文件中搜索模式。

    • 示例:grep "error" log.txt将在文件中搜索log.txt模式"error"并打印匹配的任何行。
  19. head- 显示文件的前几行。

    • 例如:head -n 10 file.txt将显示的前 10 行file.txt
  20. tail- 显示文件的最后几行。

    • 例如:tail -n 10 file.txt将显示的最后 10 行file.txt
  21. diff- 比较两个文件之间的差异。

    • 例如:将比较diff file1.txt file2.txt的内容并打印它们之间的差异。file1.txtfile2.txt
  22. cmp- 逐字节比较两个文件的内容。

    • 示例:将逐字节比较cmp file1.txt file2.txt的内容并报告任何差异。file1.txtfile2.txt
  23. comm- 逐行比较两个已排序文件的内容。

    • 示例:将比较comm file1.txt file2.txt的内容(它们都应该排序),并打印每个文件所特有的行。file1.txtfile2.txt
  24. sort- 对文件的行进行排序。

    • 例如:sort file.txt将按字母顺序对行进行排序file.txt
  25. export- 导出一个 shell 变量。

    • 示例:export VARNAME="value"将创建一个名为 的 shell 变量,VARNAME其值为"value"
  26. zip- 将文件压缩为 ZIP 档案。

    • 示例:zip archive.zip file1.txt file2.txt将创建一个名为的 ZIP 档案,其中archive.zip包含文件file1.txtfile2.txt
  27. unzip- 从 ZIP 档案中提取文件。

    • 示例:unzip archive.zip将提取 ZIP 档案的内容archive.zip
  28. ssh- 使用 SSH 协议连接到远程服务器。

    • 例如:将以用户身份ssh user@example.com连接到服务器example.comuser
  29. service- 控制系统服务。

    • 示例:service apache2 start将启动 Apache Web 服务器。
  30. ps- 显示有关正在运行的进程的信息。

    • 示例:ps aux将显示所有正在运行的进程及其资源使用情况的列表。
  31. kill- 向进程发送信号以终止它。

    • 示例:kill 12345将发送信号以终止进程 ID 为 的进程12345
  32. killall- 终止具有指定名称的所有进程。

    • 例如:killall firefox将终止所有名为 的进程firefox
  33. df- 显示有关已安装文件系统上可用磁盘空间的信息。

    • 示例:df -h将以人类可读的格式显示可用磁盘空间(例如,以千兆字节或兆字节为单位)。
  34. mount- 安装文件系统。

    • 例如:mount /dev/sda1 /mnt/mydisk将分区挂载/dev/sda1在挂载点/mnt/mydisk
  35. chmod- 更改文件或目录的权限。

    • 示例:chmod 755 file.txt将授予文件所有者读取、写入和执行权限,并授予文件其他所有人读取和执行权限file.txt
  36. chown- 更改文件或目录的所有权。

    • 例如:chown user:group file.txt将 的所有者更改file.txtuser,并将组所有权更改为group
  37. ifconfig- 配置网络接口参数。

    • 例如:ifconfig eth0 up将启用网络接口eth0
  38. traceroute- 追踪数据包到达目的地的路径。

    • 示例:traceroute example.com将跟踪数据包从当前系统到目的地的路径example.com
  39. wget- 从互联网下载文件。

    • 例如:将从wget https://example.com/file.zip下载文件file.ziphttps://example.com
  40. ufw- 用于管理防火墙的前端。

    • 示例:ufw allow ssh将允许传入连接到 SSH 服务。
  41. iptables- Linux 的防火墙管理工具。

    • 示例:iptables -A INPUT -p tcp --dport 80 -j ACCEPT将允许传入连接到 TCP 端口 80(HTTP 的默认端口)。
  42. apt- 基于 Debian 的系统的包管理器。

    • 示例:apt update将更新可用包的列表。
  43. sudo- 允许用户以超级用户(root)的权限运行命令。

    • 示例:sudo apt update将使用 root 权限更新可用软件包的列表。
  44. cal- 显示日历。

    • 例如:cal将显示当前月份的日历。
  45. alias- 为命令创建别名。

    • 示例:将创建运行命令的alias ll='ls -alF'别名llls -alF
  46. dd- 将数据从一个位置复制到另一个位置。

    • 例如:dd if=/dev/sda of=disk.img将创建一个名为 的disk.img设备内容的图像文件/dev/sda
  47. whereis- 显示命令的位置。

    • 示例:将显示系统上命令whereis ls的位置。ls
  48. whatis- 显示命令的简短描述。

    • 示例:whatis ls将显示命令的简短描述ls
  49. top- 显示有关正在运行的进程的信息。

    • 示例:top将实时显示正在运行的进程列表及其资源使用情况。
  50. passwd- 更改用户密码。

    • 例如:passwd user1将提示您输入并确认用户的新密码user1

可以通过以下链接找到有关特定命令的更多详细信息:

Bash URL:https://linux.die.net/man/1/change_command_name

例如,要查看 ls 命令的手册页,您可以点击以下链接:https://linux.die.net/man/1/ls

命令的手册页包含该特定命令或实用程序的全面参考指南,可在 Linux 或类 Unix 操作系统上使用。它包含该命令及其选项的描述,以及如何使用该命令的示例。它还可能包含有关该命令的语法、返回值以及使用该命令时可能发生的任何错误的信息。

您可以在命令提示符下输入 man 并加上命令名称来访问该命令的手册页。手册页分为多个部分,每个部分涵盖一个特定的主题。第一部分编号为 1,包含所有用户可用的命令。第二部分编号为 2,包含系统调用,这些函数由操作系统内核提供,允许程序向内核请求服务。第三部分编号为 3,包含库函数,这些函数由程序使用的库提供。

如果您正在使用Medium,请支持我并关注我,获取更多有趣的文章。Medium简介

如果本指南对您和您的团队有帮助,请与其他人分享!

文章来源:https://dev.to/kanani_nirav/50-linux-commands-every-developer-need-to-know-with-example-mc
PREV
开发人员无需的 5 种工具
NEXT
高级 Dockerfile 指令