curl 命令参数 `-o-` 有什么意义?

2019-05-17 11:54:46 +08:00
 mytry

看见 nodejs nvm 的安装命令: https://github.com/nvm-sh/nvm

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash

or Wget:

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash

curl 的 -o 是输出到某个文件,-o- 是输出到 stdout 吗,这和不加任何参数有什么区别? wget 倒是可以理解,因为它默认是输出到文件的。

(另外,看到很多程序远程安装都提供 curl 和 wget 两个版本,是不是有些系统默认不支持 curl 或者不好用?)

5361 次点击
所在节点    程序员
6 条回复
neroxps
2019-05-17 12:05:19 +08:00
busybox 默认只有 wget
xiadong1994
2019-05-17 12:11:51 +08:00
-o-就是输出到 stdout。
有的系统既没有 wget,也没有 curl ……
CSM
2019-05-17 12:14:48 +08:00
内容是二进制文件时,curl 会提示你为了不搞乱终端,截断了输出之类的,所以需要显式指定。
但是输出重定向不就不会有这个提示了,所以我猜是 -o- 看起来很萌?( ̄▽ ̄)
ly50247
2019-05-17 12:15:32 +08:00
在这里加不加 -o- 没什么区别。
AsisA
2019-05-17 17:45:20 +08:00
应该是大写的 O 吧,大写 -O- 会输出到 stdout
no1xsyzy
2019-07-09 14:08:19 +08:00
https://github.com/curl/curl/blob/92963d612b9c5ef32d63d26c72d6fff64930eba6/src/tool_operate.c#L818

config->terminal_binary_ok = (outfile && !strcmp(outfile, "-"));

"-" 有区别的地方就这一个,所以应该如 #3 所说。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/564999

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX