gpt4 book ai didi

linux - wget 或类似程序是否始终在 POSIX 系统上可用?

转载 作者:IT王子 更新时间:2023-10-29 00:18:21 27 4
gpt4 key购买 nike

是否有像 wget/lynx/GET 这样默认分发在 POSIX 或 *nix 操作系统中的 HTTP 客户端,可用于最大的可移植性?

我知道大多数系统都安装了 wgetlynx,但我似乎记得安装了一些使用默认设置的 Ubuntu 服务器系统,它们都没有安装 wgetlynx 安装在基础包中。

我正在为 Linux(可能还有 Mac)编写一个 shell 脚本,以便在计算机上安装一个软件。为了避免不得不分发几个大文件,我想从互联网上获取这些文件,而不是用安装程序打包。目前,安装脚本将分布在从 Makeself 创建的单个文件中.

我想避免让安装脚本超过 100 MB(如果包含文件的话),而且如果用户正在升级或重新安装软件,则可能不需要它们。也许最便携的做法是将文件包含在包中。

现在我只想让脚本按顺序检查 wgetlynxGET,它将使用无论它可以下载哪个,但如果有一种方法可以下载适用于所有系统的文件,我就可以完全避免这种情况。

编辑:

有谁了解 lwp-request (GET) 及其可用性?到目前为止,这似乎在我检查过的几个系统上很容易获得,我记得这总是在 10 多年前回到 RedHat。

最佳答案

2019-11-04 编辑:我正在重写我的答案,以反射(reflect)确保传输在飞行中不被篡改的重要性。我将在规则下方保留我的原始答案。

我建议使用 rsync 而不是 ssh 来传输文件。 rsync 的界面可能看起来让人不知所措,但大多数用户可能会选择 rsync -avzP,如果您需要更大的灵 active ,rsync 可以适应。使用 ssh 将为您的连接提供完整性、真实性和私密性。

curl 是 http 传输的事实标准;如果首选纯 http 或 https,curl 或基于 curl 的工具可能是不错的选择。


根据我的经验,工具的可用顺序约为:

  • wget
  • curl
  • sftp
  • ftp
  • GET(我一直使用 HEAD,但常常忘记它只是套件中的一个工具)
  • tftp
  • nc(不像我希望的那样常见)
  • socat(更不常见)

bash /dev/tcp 工具在我用过的大多数系统上都可用(有些使用了 dashpdksh 代替),但是将 echobashncsocat 一起使用会走很长的路-around 用于 HTTP 访问——您将不得不以某种方式处理 header ,这降低了它的优雅度。

关于linux - wget 或类似程序是否始终在 POSIX 系统上可用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9490872/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com