如何使用 Bash 从 Internet 将文件下载到我的 linux 服务器 [关闭]

Posted

技术标签:

【中文标题】如何使用 Bash 从 Internet 将文件下载到我的 linux 服务器 [关闭]【英文标题】:How do I download a file from the internet to my linux server with Bash [closed] 【发布时间】:2012-12-27 08:54:17 【问题描述】:

我最近不得不升级到 VPS 服务器 (HostGator Linux),因为我想运行一个比常规 php 数据库操作更复杂的脚本。我正在尝试安装 JDK 和 Apache Ant(如果重要,用于在服务器上编译 android 应用程序)。

我观看了有关 Linux Bash 的教程并开始使用它。我目前正在尝试在服务器上安装 Java(使用 JDK 和 JRE)。

我正在关注此页面上的教程: http://www.oracle.com/technetwork/java/javase/install-linux-64-self-extracting-142068.html

但是,我不知道在这一行该怎么做:

    下载并检查下载文件的大小。

    您可以下载到任何您可以写入的目录。

如何从命令行下载 Java?

如果重要的话,我正在运行 CentOS v5.8

【问题讨论】:

this page 的第三个要点指出,有关“程序员常用的软件工具”的问题被认为是主题。因此,这个关于 Linux 的问题(可以被认为是一种工具,并且绝对是程序员最常用的)是完全有效的。如果您不同意,请至少考虑将问题迁移到Server Fault。 【参考方案1】:

使用 wget

wget -O /tmp/myfile 'http://www.google.com/logo.jpg'

或卷曲:

curl -o /tmp/myfile 'http://www.google.com/logo.jpg'

【讨论】:

【参考方案2】:

您可以使用命令wget 从命令行下载。具体来说,您可以使用

wget http://download.oracle.com/otn-pub/java/jdk/7u10-b18/jdk-7u10-linux-x64.tar.gz

但是,由于 Oracle 要求您接受许可协议,这可能不起作用(我目前无法对其进行测试)。

【讨论】:

由于问题被锁定,我无法发布作为答案,我将其写为评论。您可以使用wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm" 进行下载。当然,您可以根据需要更改 URL。更多可以找到here【参考方案3】:

我猜你可以使用curlwget,但是因为Oracle 要求你检查一些复选标记,所以用上面提到的工具来模拟会很痛苦。您必须下载带有许可协议的页面,并通过查看它找出需要什么请求才能进行实际下载。

当然,您可以简单地启动浏览器,但这可能不符合“从命令行”的条件。所以你可能想看看lynx,一个基于文本的浏览器。

【讨论】:

我也需要这样做(Linux noob)。我所做的是使用 Firefox(在我的 Win 桌面上)接受许可证,然后开始下载。下载开始后,打开下载对话框并取消下载。然后右键单击取消的项目并选择“复制下载链接”。您现在可以在 wget 命令中使用此链接(将其粘贴到终端窗口中)。

以上是关于如何使用 Bash 从 Internet 将文件下载到我的 linux 服务器 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何将 csv 文件从 Internet 加载到 Access 数据库中?

如何将执行命令从 bash 脚本转换为 C?或如何在“W”模式下正确使用 popen()?

如何将 xml 文件从 Internet 直接导入 Oracle 表

如何从 bash 脚本将消息记录到特定路径中的日志文件

如何确保 gsutil 复制不使用外部 Internet?

如何使用 bash 脚本将 .xlsx 文件转换为 html?