我有一个安装在我的 Ubuntu 16.04 上的软件包列表。我有一个 bash 脚本,它尝试在适当的目录(已创建)中一一下载它们的源代码。我收到一个错误:
Reading package lists...
E: Unable to find a source package for xxxx
~/source
~/sourcexxx
我的 bash 脚本如下所示:
#!/bin/bash
while read package
do
#cd /mnt
mkdir $package
pushd $package
apt-get -d -q source $package
popd
done < ins.txt
我不想更新任何系统文件。
apt-get -d -q 源 xxx 独立工作,但不在上面的脚本中。可能是什么原因?
我的 ins.txt 的一部分:
adduser
adium-theme-ubuntu
adwaita-icon-theme
alacarte
alsa-base
alsa-utils
amd64-microcode
anacron
apg
app-install-data
app-install-data-partner
apparmor
apparmor-easyprof
当我单独为例如 apt-get -d -q source adduser 进行操作时,它可以工作
最佳答案
使用您的列表,在删除 dpkg-query -f |
后,这对我来说似乎工作正常(在 Ubuntu 16.04 上)部分 :
#!/bin/bash
while read package
do
echo "Package $package"
mkdir -v $package
pushd $package
apt-get -d -q source $package
popd
done < ins.txt
可能有些包没有源代码,或者您的 ins.txt 文件包含无效的包。
但是这个问题肯定会更好地发布在Ask Ubuntu上。 .
关于Bash 脚本无法从列表中下载源包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61932319/