You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Bash脚本的Streamlink中关闭下载进度打印?

解决Streamlink下载进度输出屏蔽问题

方法1:使用--quiet参数

Streamlink的--quiet(简写-q)参数会抑制除错误信息外的所有控制台输出,包括你提到的下载进度行。修改后的streamlink命令如下:

streamlink --hls-segment-threads 3 $link $quality -o "$dir$file" --logfile "${name} log" --quiet

方法2:重定向stdout到空设备

如果你需要保留部分输出但仅屏蔽进度信息,可直接将stdout重定向到/dev/null(因为你确认进度信息输出到stdout):

streamlink --hls-segment-threads 3 $link $quality -o "$dir$file" --logfile "${name} log" > /dev/null

若同时需要屏蔽stderr的额外冗余输出,可追加2>&1:

streamlink --hls-segment-threads 3 $link $quality -o "$dir$file" --logfile "${name} log" > /dev/null 2>&1

方法3:更新Streamlink后使用--no-progress

你提到--no-progress无效,大概率是使用的Streamlink版本过旧,该参数是较新版本才支持的特性。先更新到最新版本:

pip install --upgrade streamlink

更新后重新使用--no-progress参数即可:

streamlink --hls-segment-threads 3 $link $quality -o "$dir$file" --logfile "${name} log" --no-progress

修改后的完整脚本示例

quality="1080p,best"
dir="/home/artem/writer/"
while true
do
datetime=$(date +%Y-%m-%d)_$(date +%k-%M-%S)
echo "$datetime" >> /home/artem/writer/"${name} log"
file="${name}_$datetime.ts"
# 这里选用--quiet参数作为示例,可替换为其他方法的命令
streamlink --hls-segment-threads 3 $link $quality -o "$dir$file" --logfile "${name} log" --quiet
echo " " >> /home/artem/writer/"${name} log"
sleep 30
done

内容的提问来源于stack exchange,提问作者Artem Filippov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 13:00:50