V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
mk3s
V2EX  ›  问与答

如何寻找对应 Linux 命令的源码

  •  
  •   mk3s · 324 天前 · 949 次点击
    这是一个创建于 324 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一些常用 linux 的命令,比如 unzip 、tree 、lrzsz 等命令,有人知道如何找寻他们的源码么,下午花了点时间 google 了一下,没找到什么有效信息,目前我需要这些源码进行手动编译部署,主要为了通配 x86 的 linux 平台

    10 条回复    2023-05-29 19:44:59 +08:00
    502badgateway
        1
    502badgateway  
       324 天前   ❤️ 1
    agagega
        2
    agagega  
       324 天前 via iPhone
    先找到这个命令的路径,然后 man 一下看看是哪个包的,或者系统应该也有命令能查是哪个包提供的这个命令。然后搜一下这个命令的源码就行了,Linux 基础命令一般是 GNU 那堆什么 utils 提供的。
    lambdaq
        3
    lambdaq  
       324 天前   ❤️ 1
    apt-get source XXX

    XXX 包名。
    daimiaopeng
        4
    daimiaopeng  
       324 天前   ❤️ 2
    大部分常用的命令: https://github.com/coreutils/coreutils
    levelworm
        5
    levelworm  
       324 天前 via Android   ❤️ 1
    bashbot
        6
    bashbot  
       324 天前   ❤️ 1
    https://www.linuxfromscratch.org/lfs/
    直接看这个找吧,基本系统用到的包大多数都覆盖了,而且还有编译方法。
    Nitroethane
        7
    Nitroethane  
       324 天前   ❤️ 1
    也可以通过 ArchLinux 找,比如 tree 命令的话 package 页面会写 upstream URL 。https://archlinux.org/packages/extra/x86_64/tree/
    xiri
        8
    xiri  
       324 天前 via Android   ❤️ 1
    原生 linux 下部分常用命令应该都是 coreutils 提供的,或者你也可以尝试 busybox ,做静态链接很方便
    ltkun
        9
    ltkun  
       324 天前 via Android
    任何 Linux 发行版都会配对应源码包的
    PhaSelEza
        10
    PhaSelEza  
       324 天前   ❤️ 1
    Debian 的话,先安装 apt-file 找到命令的包名,以 unzip 为例:

    apt-file update
    apt-file find "unzip"

    找到包名后,用 apt source 下载源码,用 apt build-dep 安装编译所需的环境。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5527 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 06:39 · PVG 14:39 · LAX 23:39 · JFK 02:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.