直接从 URL 执行 Bash 脚本

1.概览

Linux 中的各种安装指南涉及首先运行 shell 脚本,我们下载并使用 Bash 单独执行。不仅安装指南,而且为自动化手动活动编写的自定义shell脚本还涉及下载和执行脚本。

在本教程中,curl and wget我们将介绍使用curl和wget在单个步骤中下载和执行脚本的方法。

使用此方法时,我们必须谨慎,因为通过不安全的连接下载和执行脚本可能会导致安装恶意软件。此外,我们还需要确保我们使用更新的TLS协议和curl / wget库。

我们可以通过创建一个专用的、非特权的非轮毂用户组,并从中执行脚本来部分管理风险。这确保了没有脚本使用管理员权限执行。

2.安装和使用 – 卷曲

Some某些 Linux 发行版可能默认未安装

我们可以使用 apt-get 将其安装到任何 Ubuntu/Debian 系统上:

$ sudo apt-get install curl

或者我们也可以在CentOs/Fedora/Redhat上安装它:

$ sudo yum install curl

现在,要使用 cURL 下载并执行脚本,我们可以使用 -s 选项。然后,我们将结果发送到 bashbash:

$ curl -s http://example.com/script.sh | bash

当我们使用 -s 选项时,我们要求 cURL 默默地获取 URL 上的所有内容,这些内容不会显示平均下载速度和总时间等统计数据。

这使我们能够使用管道 | 并将其馈送到实际执行脚本的 Bash 命令。

3.安装和使用 – wget

Mostwget大多数 Linux 发行版默认安装了 wget。

我们可以使用 apt-get 将其安装到任何 Ubuntu/Debian 系统上:

$ sudo apt-get install wget

或者我们也可以在CentOs/Fedora/Redhat上安装它:

$ sudo yum install wget

现在,要使用wget下载并执行脚本,wget我们可以使用 -q0 选项,连字符,然后将结果管道到 bashbash:

$ wget -qO - http://example.com/script.sh | bash

当我们使用 -q 选项时,我们告诉 wget 通过不打印其冗长的输出来安静地下载文件。

选项 O 用于将 script.sh 的内容保存到文件。尾随的连字符(介于 -qO 和 http://之间)是告诉 wget 将此内容引导到 /dev/stdout。/dev/stdout任何指向/dev/stdout的东西都直接显示在终端上,这就是为什么script.sh的内容永远不会写到磁盘的原因。

这种尾随的连字符使我们能够将 script.sh 的内容管道到实际执行它的 bash 命令。wget如果我们使用wget没有尾随的连字符和大写O,get 那么get将使用filename脚本.sh将文件内容保存到磁盘。wget这是因为wget实际上用于在Linux中下载文件。

另一方面,curl 将默认永远不会下载文件。虽然,我们刚刚看到我们如何以这种方式使用它。

4.结论

在这篇短文中,我们学会了如何使用curl和wget直接从URL执行shell脚本。curlwget.

我们了解到,通过不安全的连接下载和执行脚本是有风险的。先下载脚本并使用常规编辑器扫描潜在的恶意命令,可以帮助降低风险。我们还看到,curl/wget确保我们使用更新的TLS协议和curl/wget库是很重要的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值