shell - 使用 wget 下载文件时如何仅使用文件名保存文件

标签 shell azure azure-storage wget

当我执行如下 wget 时,将下载文件名为 sample.txt?st=2017-07-19T06%3A00%3A00Z"

wget "https://sample.blob.core.windows.net/test/sample.txt?st=2017-07-19T06%3A00%3A00Z"

我不想像下面这样使用,因为它不适合我的场景。

wget -O $filename -q "https://sample.blob.core.windows.net/test/sample.txt?st=2017-07-19T06%3A00%3A00Z"

但是我想在使用 wget 命令下载时将文件名保存为sample.txt。如何实现这一目标?

最佳答案

如果我的理解是正确的,下面的脚本应该可以工作。

##set your blob url
url="https://sample.blob.core.windows.net/test/sample.txt?st=2017-07-19T06%3A00%3A00Z"
filename="${url%%[?]*}"; filename="${filename##*/}"

wget -O $filename -q $url

注意:如果您使用此脚本,您的文件名不能包含 ?

关于shell - 使用 wget 下载文件时如何仅使用文件名保存文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45183211/

相关文章:

azure - 在 Azure DevOps 中将 Docker 容器标记为最新

powershell - 如何强制 Powershell 使用新的 Azure 订阅

c# - Azure TableEntity Flatten 方法不适用于 "Byte"数据类型

silverlight - 使用 azure 托管 silverlight 媒体

javascript - 阻止直接访问 Azure 文件,除非通过 Ember 应用程序

bash - 为什么 `\n` 在 Python 中不起作用

linux - 如何从远程 SSH session 将数据发送到本地剪贴板

azure - 使用 Mongo API 在 Cosmos DB 中的共享吞吐量集合上创建唯一索引

regex - Shell 脚本 - sed 不起作用

mysql - 使用 shell 脚本删除多个 mysql 数据库