当我从 bash 使用 wget 和 curl 时,它默认会自动切换到后台任务,而无需我提供所需的参数。这使得在脚本中使用这些命令变得很困难。示例:
22:32 $ curl -L -o firefox.tar.bz2 https://download.mozilla.org/?product=firefox-latest&os=linux64&lang=en-US && echo done
[1] 135093
[2] 135094
done
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0[2]+ Done os=linux64
✔ /tmp
100 132 100 132 0 0 643 0 --:--:-- --:--:-- --:--:-- 640
100 52.7M 100 52.7M 0 0 10.3M 0 0:00:05 0:00:05 --:--:-- 11.1M
[1]+ Done curl -L -o firefox.tar.bz2 https://download.mozilla.org/?product=firefox-latest
22:45 $ curl --version
curl 7.81.0 (x86_64-pc-linux-gnu) libcurl/7.81.0 OpenSSL/3.0.2 zlib/1.2.11 brotli/1.0.9 zstd/1.4.8 libidn2/2.3.2 libpsl/0.21.0 (+libidn2/2.3.2) libssh/0.9.6/openssl/zlib nghttp2/1.43.0 librtmp/2.3 OpenLDAP/2.5.13
wget 执行相同的操作,虽然这两个程序都有一个选项可以告诉它立即切换到后台,但我没有提供它,这会破坏我正在编写的脚本。我在 Ubuntu 22.04 上。有人能解释一下发生了什么吗?