shi*_*ish 2 command-line zsh io-redirection wget
我尝试了以下方法:
[$] wget http://cdn.edgecast.steamstatic.com/steam/apps/256679148/movie480.webm > Conan1.webm
[1:21:05]
--2017-02-23 01:51:50-- http://cdn.edgecast.steamstatic.com/steam/apps/256679148/movie480.webm
Resolving cdn.edgecast.steamstatic.com (cdn.edgecast.steamstatic.com)... 117.18.232.131
Connecting to cdn.edgecast.steamstatic.com (cdn.edgecast.steamstatic.com)|117.18.232.131|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 11255413 (11M) [video/webm]
Saving to: ‘movie480.webm’
movie480.webm 100%[===================================================================>] 10.73M 33.7KB/s in 6m 25s
2017-02-23 01:58:16 (28.6 KB/s) - ‘movie480.webm’ saved [11255413/11255413]
Run Code Online (Sandbox Code Playgroud)
可以看出命令的第一部分起作用了,wget 下载了文件,但命令的第二部分重命名文件,在这种情况下,下载了一个非常通用的 movie480.webm。为什么不是 conan1.webm ,我建议它采用的名称。
我知道如果我做了——
$ mv movie480.webm conan1.webm
Run Code Online (Sandbox Code Playgroud)
那么它会起作用,但这意味着一个额外的命令。为什么失败了?尽管与上图类似,但是否有另一种方法可以在单个命令中执行相同的操作?
您没有“建议它采用” name Conan1.webm
,而是将其标准输出流重定向到名为Conan1.webm
. 由于wget
默认情况下不写入标准输出,因此不会影响内容的保存位置。
请参阅man wget
- 特别是-O
选项:
-O file
--output-document=file
The documents will not be written to the appropriate files, but all
will be concatenated together and written to file. If - is used as
file, documents will be printed to standard output, disabling link
conversion. (Use ./- to print to a file literally named -.)
Run Code Online (Sandbox Code Playgroud)
所以你可以用
wget -O Conan1.webm http://cdn.edgecast.steamstatic.com/steam/apps/256679148/movie480.webm
Run Code Online (Sandbox Code Playgroud)
或者
wget -O- http://cdn.edgecast.steamstatic.com/steam/apps/256679148/movie480.webm > Conan1.webm
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
85 次 |
最近记录: |