• 递归下载ubuntu下的某包安装包及依赖包


     1 #! /bin/bash
     2 basepath=$(cd `dirname $0`; pwd)
     3 pkg="$*"
     4 
     5 function getDepends()
     6 {
     7   ret=`apt-cache depends $1 |grep -i Depends |cut -d: -f2 |tr -d "<>"`
     8   if [[ -z $ret ]]; then
     9 #    echo '$1 No depends'
    10     echo -n
    11   else
    12     for i in $ret
    13     do
    14        if [[ `echo $pkg |grep -e "$i "` ]]; then
    15 #         echo "$i already in set"
    16          echo -n
    17        else
    18          pkg="$pkg $i"
    19          echo "Download $i ing"
    20          getDepends $i
    21        fi
    22     done
    23   fi
    24 }
    25 
    26 for j in $@
    27 do
    28   getDepends $j
    29 done
    30 
    31 echo $pkg
    32 #apt install $pkg --reinstall -d -y
    33 apt-get download $pkg -d -y

    可以递归的把指定包及其依赖包下载回去安装 , (.deb后缀)

    有时候会出现安装失败的情况,这时应注意出错信息,去除该包后继续尝试下载, 其实执行的命令如下

    apt-get download python2.7 python2.7-minimal libc6 libgcc1 gcc-6-base libpython2.7-minimal zlib1g libpython2.7-stdlib mime-support libbz2-1.0 libdb5.3 libexpat1 libffi6 libncursesw5 libtinfo5 libreadline6 readline-common dpkg liblzma5 multiarch-support libselinux1 libpcre3 tar libacl1 libattr1 install-info libsqlite3-0 libssl1.0.0 debconf perl-base -d -y
  • 相关阅读:
    返回数组指针的函数形式
    zoj 2676 网络流+01分数规划
    2013 南京理工大学邀请赛B题
    poj 2553 强连通分支与缩点
    poj 2186 强连通分支 和 spfa
    poj 3352 边连通分量
    poj 3177 边连通分量
    poj 2942 点的双连通分量
    poj 2492 并查集
    poj 1523 求割点
  • 原文地址:https://www.cnblogs.com/yeyong/p/14156565.html
Copyright © 2020-2023  润新知