立即注册  找回密码
 立即注册
CeraNetworksBGVM服务器主机交流会员请立即修改密码Sharktech防护
查看: 33|回复: 4

wget参数后面跟一个横线 "

[复制链接]

wget参数后面跟一个横线 "

[复制链接]

157

主题

221

回帖

1069

积分

金牌会员

积分
1069
wawos

157

主题

221

回帖

1069

积分

金牌会员

积分
1069
2024-9-14 18:02:20 | 显示全部楼层 |阅读模式
比如:
[ol]
  • wget -O - http://inst.sh/[/ol]复制代码

    -O 后面不是应该写下载后保存的文件名吗, 比如123.zip,  直接写一个"-"作用是啥
  • 回复

    使用道具 举报

    4

    主题

    182

    回帖

    694

    积分

    高级会员

    积分
    694
    wps

    4

    主题

    182

    回帖

    694

    积分

    高级会员

    积分
    694
    2024-9-14 18:05:07 | 显示全部楼层
    您说得对,`wget -O` 后面通常接的是下载后保存的文件名。

    但是,当 `-O` 后面跟着一个 `"-"` 时,`wget` 会将下载的内容输出到标准输出 (stdout) 而不是保存到文件。

    **换句话说,`wget -O - http://inst.sh/` 会将 `http://inst.sh/` 的内容下载下来并直接显示在终端上,而不是保存到文件。**

    这在以下几种情况下非常有用:

    * **直接查看下载内容:**  如果您只是想快速查看下载内容,而不需要保存文件,可以使用 `-O -`。
    * **将下载内容管道传输到其他命令:**  您可以将 `wget -O -` 的输出通过管道传输给其他命令进行处理,例如:
        ```bash
        wget -O - http://example.com/data.json | jq '.key'
        ```
        这会下载 `data.json` 文件,并使用 `jq` 命令提取 `key` 的值。
    * **脚本中使用:**  在 shell 脚本中,您可以使用 `-O -` 将下载的内容存储到变量中,例如:
        ```bash
        content=$(wget -O - http://example.com/file.txt)
        ```
        这会将 `file.txt` 的内容存储到 `content` 变量中。

    总而言之,`wget -O -` 是一种将下载内容重定向到标准输出的便捷方式,可以用于各种场景。
    回复

    使用道具 举报

    157

    主题

    221

    回帖

    1069

    积分

    金牌会员

    积分
    1069
    wawos 楼主

    157

    主题

    221

    回帖

    1069

    积分

    金牌会员

    积分
    1069
    2024-9-14 18:10:27 | 显示全部楼层

    wps 发表于 2024-9-14 18:05

    您说得对,`wget -O` 后面通常接的是下载后保存的文件名。

    但是,当 `-O` 后面跟着一个 `"-"` 时,`wget`  ...


    感谢科普啊,

    那是不是横线前面不要空格也可以呢, 比如:wget -O- http://123.com/1.zip

    我看有的没有写空格, 表示意思是一样的吧
    回复

    使用道具 举报

    4

    主题

    182

    回帖

    694

    积分

    高级会员

    积分
    694
    wps

    4

    主题

    182

    回帖

    694

    积分

    高级会员

    积分
    694
    2024-9-14 18:05:00 | 显示全部楼层

    wawos 发表于 2024-9-14 18:10

    感谢科普啊,

    那是不是横线前面不要空格也可以呢, 比如:wget -O- http://123.com/1.zip

    的确,-O- 和 -O - 在 wget 中是等效的,都可以将下载内容输出到标准输出。

    wget 的参数解析机制允许一些灵活性,所以即使省略了空格,只要参数和值之间能够清晰区分,wget 就能够正确识别。

    不过,为了代码的可读性和一致性,建议您尽量在 -O 和 - 之间添加一个空格,这样更符合大多数人的习惯,也更容易理解。
    回复

    使用道具 举报

    157

    主题

    221

    回帖

    1069

    积分

    金牌会员

    积分
    1069
    wawos 楼主

    157

    主题

    221

    回帖

    1069

    积分

    金牌会员

    积分
    1069
    2024-9-14 18:13:34 | 显示全部楼层

    wps 发表于 2024-9-14 18:13

    的确,-O- 和 -O - 在 wget 中是等效的,都可以将下载内容输出到标准输出。

    wget 的参数解析机制允许一 ...

    了解, 了解,  感谢指教
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|小黑屋|HS2V主机综合交流论坛

    GMT+8, 2024-11-27 05:32 , Processed in 0.021940 second(s), 3 queries , Gzip On, Redis On.

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表