විධාන රේඛාවෙන් සියලුම නිධි සහ පීපීඒ ලැයිස්තුවක් ස්ථාපන පිටපතකට ලබා ගන්නේ කෙසේද?


245

මගේ පද්ධතියේ ස්ථාපනය කර ඇති සියලුම පැකේජ ලැයිස්තුගත කරන්නේ කෙසේදැයි මම දනිමි .

නමුත් යතුරු ඇතුළු නිධිය සැකසුම ප්‍රතිවර්තනය කිරීම සඳහා නව යන්ත්‍රයක් මත ධාවනය කළ හැකි ස්ක්‍රිප්ට් එකකට සියලු නිධි සහ පීපීඒ ලැයිස්තුවක් ලබා ගන්නේ කෙසේද?

මම සොයා බලන කළ හැකි බව ඔබ දැන /etc/apt/sources.listසහ /etc/apt/sources.list.d, නමුත් මම ගැනීමට ක්රමයක් හොයන්නේ ජනනය සියලු ක්රියාත්මක කරන තිර රචනය apt-add-repositoryනව පද්ධතිය (සියලුම යතුරු ලබා පිටතට බව ආකාරයේ) මත විධාන.

අදහස් තිබේද?

Answers:


134

ඔබට මේ සමඟ සියල්ල පෙන්විය හැකිය:

grep ^ /etc/apt/sources.list /etc/apt/sources.list.d/*

16
අදහස් දැක්වූ egrep -v '^#|^ *$' /etc/apt/sources.list /etc/apt/sources.list.d/*රේඛා සහ හිස් රේඛා ඉවත් කිරීමට කුමක් කළ යුතුද?

3
කරුණාකර ඔබ භාවිතා පැහැදිලි විය හැකි ^පසු grepදී grep ^ /etc/apt/sources.list /etc/apt/sources.list.d/*?

4
@ vasa1 කැරට් ^ සහ ඩොලර් ලකුණ respectively යනු රේඛාවක ආරම්භයේ සහ අවසානයේ ඇති හිස් නූලට පිළිවෙලින් ගැලපෙන මෙටාචරැක්ටර් ය.
wojox

5
මම grep භාවිතා කරමි ^ [^ #] ... - එය අදහස් දැක්වූ සියලුම ප්‍රභවයන් ස්වයංක්‍රීයව සඟවයි
රොස් අයිකන්

14
ඔබ කිසිවක් පෙරීමට cat /etc/apt/sources.list /etc/apt/sources.list.d/*
නොයන්නේ නම්,

102

දර්ශකයන්ට ස්තූතියි. ටිකක් පිරිසිදු කිරීමත් සමඟ මට PPA ලැයිස්තුගත කරන පිටපතක් ලැබුණා, නමුත් වෙනත් ගබඩාවක් නොවේ:

#! /bin/sh 
# listppa Script to get all the PPA installed on a system ready to share for reininstall
for APT in `find /etc/apt/ -name \*.list`; do
    grep -o "^deb http://ppa.launchpad.net/[a-z0-9\-]\+/[a-z0-9\-]\+" $APT | while read ENTRY ; do
        USER=`echo $ENTRY | cut -d/ -f4`
        PPA=`echo $ENTRY | cut -d/ -f5`
        echo sudo apt-add-repository ppa:$USER/$PPA
    done
done

ඔබ එය listppa > installppa.shඅමතා ස්ක්‍රිප්ට් එකක් ලබා ගත් විට ඔබට නව යන්ත්‍රයකින් පිටපත් කර සියලු PPA නැවත ස්ථාපනය කළ හැකිය.

ඊළඟ නැවතුම: අනෙක් ගබඩාවන් සඳහා එය කරන්න:

#! /bin/sh
# Script to get all the PPA installed on a system
for APT in `find /etc/apt/ -name \*.list`; do
    grep -Po "(?<=^deb\s).*?(?=#|$)" $APT | while read ENTRY ; do
        HOST=`echo $ENTRY | cut -d/ -f3`
        USER=`echo $ENTRY | cut -d/ -f4`
        PPA=`echo $ENTRY | cut -d/ -f5`
        #echo sudo apt-add-repository ppa:$USER/$PPA
        if [ "ppa.launchpad.net" = "$HOST" ]; then
            echo sudo apt-add-repository ppa:$USER/$PPA
        else
            echo sudo apt-add-repository \'${ENTRY}\'
        fi
    done
done

මෙය කළ යුත්තේ උපක්‍රමයයි. නිවැරදි රීජෙක්ස් හඳුනා ගැනීමට මට සුපර් යූසර් පිළිබඳ ප්‍රශ්නයක් අවශ්‍ය විය .


1
ඔබේ grep -oඋදාහරණයක් ලෙස, \` දී [a-z0-9\-]ඔබ බලාපොරොත්තු වන දේ කරන්නේ ද නැත. එය සැබවින්ම පසුගාමී පහරකට ගැලපේ . ලැයිස්තුවේ ආරම්භයේ හෝ අවසානයේ ඇති විට ඔබට එයින් ගැලවීමට අවශ්‍ය නැත ; ඇත්ත වශයෙන්ම, ඔබට එයින් ගැලවිය නොහැක! .. මේ අවස්ථාවේ දී (බොහෝ විට) ගැටළුවක් ඇති නොකරනු ඇත, මන්ද ඔබට (බලාපොරොත්තුවෙන්) ඇතුල්වීමේදී පසුබෑමක් ඇති නොවනු ඇත . -[]\`deb
පීටර්.ඕ

2
PPA නම් වල තිත් අඩංගු විය හැකි බව සලකන්න, එබැවින් ඔබේ regexphttp://ppa.launchpad.net/[a-z0-9-]\+/[a-z0-9.-]\+
kynan

නැත, ඔබට රීජෙක්ස් [[:graph:]] වෙනුවට වෙනස් කිරීමට අවශ්‍ය [a-z...blah.anything]වන්නේ එය ඕනෑම අක්ෂර සංඛ්‍යා + විරාම ලකුණු සමඟ ගැලපෙන බැවිනි - PPA නම් වලින් සමන්විත වන්නේ එයයි.
මයිකල් එච්

ස්වරූපයෙන් debලබා දී නොමැති නම්, එක් එක් නිධිය රේඛාවේ ආරම්භයේ දී ඔබ වචනය ඇතුළත් කළ යුතු යැයි මම සිතමි ppa:$USER/$PPA.
jarno

wstwissel ඔබ භාවිතා කළ කිසියම් විශේෂිත හේතුවක් සොයාගෙන පසුව grep? ඔබට පහසුවෙන් ෂෙල් එක විග්‍රහ කරන ග්ලෝබ් එකක් කර එය ග්‍රහණය කර ගත හැකිය. grep -Po "(?<=^deb\s).*?(?=#|$)" /etc/apt/{sources.list,sources.list.d/*.list} | while read ENTRY ; do echo $ENTRY; doneමෙය ලියා ඇති පරිදි සෑම ප්‍රවේශයක්ම එන ගොනුවේ නම පෙන්වන බැවින් ප්‍රති result ලයේ ආරම්භයේ සිට පළමු මහා බඩවැල දක්වා ත්‍රිම් එකක් කිරීමට ඔබට අවශ්‍ය වනු ඇත, නමුත් එය කැපීම සමඟ එතරම් අපහසු නොවේ. uniqඑකම ප්‍රභවයක් සඳහා ඔබට බහු ඇතුළත් කිරීම් අවශ්‍ය නොවන්නේ නම් ඔබට එය හරහා යාමට අවශ්‍ය විය හැකිය (උදා: ඔබට ගූගල් ක්‍රෝම් ස්ටේබල් / බීටා / ඩිව් ස්ථාපනය කර ඇත්නම්).
dragon788

24

සියලු ද්විමය මෘදුකාංග ප්‍රභවයන් නිශ්චිතව දක්වා ඇති ගොනුව සමඟ ලබා ගත හැකි සරලම නමුත් effective ලදායී ක්‍රමය තවමත් පළ කර නොමැති වීම ගැන මම පුදුම වෙමි.

grep -r --include '*.list' '^deb ' /etc/apt/sources.list /etc/apt/sources.list.d/

සියලුම සැකසූ ලිපිගොනු වලින්, මෙය ආරම්භ වන සෑම පේළියක්ම මුද්‍රණය කරයි deb. deb-srcමූලාශ්‍ර කේත ගබඩාවන් සක්‍රීය කිරීම සඳහා අදහස් දැක්වූ රේඛා මෙන්ම රේඛා ද මෙය බැහැර කරයි .

එය සැබවින්ම *.listවිග්‍රහ කරනු ලබන සියලුම ලිපිගොනු පමණක් සොයයි apt, නමුත් උදා: *.list.saveඋපස්ථ සඳහා හෝ නීති විරෝධී නම් සහිත වෙනත් ගොනු භාවිතා නොකරයි .


ඔබට කෙටි නමුත් අවශ්‍ය වන්නේ 99.9% ක ප්‍රමාණයක් පමණක් වන අතර එය ඕනෑවට වඩා ලිපිගොනු සෙවිය හැකි නිවැරදි ප්‍රතිදානය (සියලුම /etc/apt/sources.list*ලිපිගොනු සහ නාමාවලි ඇතුළත් වේ , පමණක් නොව /etc/apt/sources.list`/etc/apt/sources.list.d/*), ඔබටද හැකිය මෙය භාවිතා කරන්න:

grep -r --include '*.list' '^deb ' /etc/apt/sources.list*

එහි නොතිබිය යුතු ලිපිගොනු නොමැති නම්, ප්‍රතිදානය සමාන වේ.


මගේ යන්ත්‍රයේ නිමැවුම් උදාහරණයක් වනුයේ:

/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily main restricted
/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-updates main restricted
/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily universe
/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-updates universe
/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily multiverse
/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-updates multiverse
/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-backports main restricted universe multiverse
/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-security main restricted
/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-security universe
/etc/apt/sources.list:deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-security multiverse
/etc/apt/sources.list:deb http://archive.canonical.com/ubuntu wily partner
/etc/apt/sources.list.d/maarten-fonville-ubuntu-ppa-wily.list:deb http://ppa.launchpad.net/maarten-fonville/ppa/ubuntu wily main
/etc/apt/sources.list.d/webupd8team-ubuntu-tor-browser-wily.list:deb http://ppa.launchpad.net/webupd8team/tor-browser/ubuntu wily main
/etc/apt/sources.list.d/fossfreedom-ubuntu-indicator-sysmonitor-wily.list:deb http://ppa.launchpad.net/fossfreedom/indicator-sysmonitor/ubuntu wily main
/etc/apt/sources.list.d/getdeb.list:deb http://archive.getdeb.net/ubuntu wily-getdeb apps

ඔබට මනරම් ප්‍රතිදානය අවශ්‍ය නම්, අපි එය හරහා නල කරමු sed:

grep -r --include '*.list' '^deb ' /etc/apt/ | sed -re 's/^\/etc\/apt\/sources\.list((\.d\/)?|(:)?)//' -e 's/(.*\.list):/\[\1\] /' -e 's/deb http:\/\/ppa.launchpad.net\/(.*?)\/ubuntu .*/ppa:\1/'

අපි මෙය දකිමු:

deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily main restricted
deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-updates main restricted
deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily universe
deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-updates universe
deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily multiverse
deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-updates multiverse
deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-backports main restricted universe multiverse
deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-security main restricted
deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-security universe
deb http://ftp-stud.hs-esslingen.de/ubuntu/ wily-security multiverse
deb http://archive.canonical.com/ubuntu wily partner
[maarten-fonville-ubuntu-ppa-wily.list] ppa:maarten-fonville/ppa
[webupd8team-ubuntu-tor-browser-wily.list] ppa:webupd8team/tor-browser
[fossfreedom-ubuntu-indicator-sysmonitor-wily.list] ppa:fossfreedom/indicator-sysmonitor
[getdeb.list] deb http://archive.getdeb.net/ubuntu wily-getdeb apps

1
පිළිගත් පිළිතුරට අනුව, OP ට PPAs ppa:<user>/<project>පෝරමයේ පෙන්වීමට අවශ්‍ය බව පෙනේ .
මුරු

ප්‍රශ්නය ඇත්ත වශයෙන්ම සියලු ගබඩාවන් ස්ථාපනය කරන / සක්‍රීය කරන ස්ක්‍රිප්ටයක් ජනනය කිරීමට අසයි. නමුත් ප්‍රශ්න මාතෘකාව වන්නේ ඒවා ලැයිස්තුගත කිරීම පමණි. එසේම වැඩිම ලකුණු ලබා ගත් 2 වන පිළිතුර ඒවා ලැයිස්තුගත කරයි, නමුත් එය ඕනෑවට වඩා ලැයිස්තුගත කරයි.
බයිට් කමාන්ඩර්

හොඳයි, නමුත් මම දැනටමත් ඉහළට ඔසවා ඇත. : ඩී
මුරු

Grep සඳහා ගොනු නාමයන් අතහැර දැමීමට ඔබට `-h` විකල්පය භාවිතා කළ හැකිය.
jarno

15

පහත විධානය ක්‍රියාත්මක කරන්න:

apt-cache policy | grep http | awk '{print $2 $3}' | sort -u

මූලාශ්රය


බයෝනික් භාෂාවෙන් මෙය ' mirrors.nic.funet.fi/ubuntubionic-security/main ' වැනි රේඛා මුද්‍රණය කරයි
jarno

1
සටහන: apt-cache policyගබඩාව පෙන්වන්නේ ඔබ ධාවනය වූ පසු පමණි apt-get update. ඔබ සමග ණයකට එකතු කළත් add-apt-repository, එය සමඟ පෙන්වන්නේ නැත apt-cache policyඔබ ක්රියාත්මක වන තුරුapt-get update
wisbucky

Is විස්බකි සඳහා: sudo apt update > /dev/null 2>&1 && sudo apt-cache policy | grep http | awk '{print $2 $3}' | sort -uහොඳින් ක්‍රියා කරයි. gist.github.com/bmatthewshea/229da822f1f02157bff192a2e4a8ffd1
bshea

4

දැනට අබල කර ඇති ඒවා ඇතුළුව සියලුම වින්‍යාසගත මෘදුකාංග ප්‍රභවයන් (නිධි) ලැයිස්තුගත කිරීමට මම මෙම විධානය භාවිතා කරමි :

cat /etc/apt/sources.list; for X in /etc/apt/sources.list.d/*; do echo; echo; echo "** $X:"; echo; cat $X; done

මම මෙය මූලික වශයෙන් දෝශ නිරාකරණය සඳහා භාවිතා කරමි; මෙය නිසැකවම ස්ක්‍රිප්ට් වලට ඇතුළත් කළ හැකි නමුත් ඔබට පටු වීමට අවශ්‍ය විය /etc/apt/sources.list.d/*හැකි /etc/apt/sources.list.d/*.listබැවින් ඔබට දැනට සක්‍රීය මෘදුකාංග ප්‍රභවයන් පමණක් ලැබෙනු ඇත.


ප්‍රතිපෝෂණය සඳහා ස්තූතියි. පූසා ලිපිගොනු ඒවා ලැයිස්තුගත කරයි, එබැවින් ස්ක්‍රිප්ට් එකක් ජනනය කිරීම සඳහා එය අතින් සංස්කරණය කිරීමට මට අවශ්‍ය වනු ඇත (ප්‍රශ්නයේ සඳහන් පරිදි). නිධි සමඟ ඇති අභියෝගය: ඔබ / etc / apt වෙතින් ගොනු පිටපත් කළහොත් ඔබට නිධිය යතුරු නොලැබේ. මේ නිසා මට ඒවා ලබා ගත හැකි පිටපතක් අවශ්‍යයි
stwissel

3

ඉතින්, යම් කැණීම් කිරීම, අපට තිබේ AptPkg::Class.

ඉතින් perlඅපිට මේ වගේ සරල දෙයක් කරන්න පුළුවන් ..

perl -MAptPkg::Cache -MData::Dumper -E'say Dumper [AptPkg::Cache->new->files()]' | less

මෙය අපට සියලු AptPkg::Class::PkgFileපැකේජ ලැයිස්තුවක් ලබා දෙයි . ඔබට බොහෝ විට ඒ apt-add-repositoryසමඟ විධාන ජනනය කළ හැකිය .


2

https://repogen.simplylinux.ch/ ඔබේ උබුන්ටු අනුවාදය සඳහා සියලුම PPA ලැයිස්තුවක් ලබා දෙනු ඇත. මෙන්න ප්‍රභව ලිපිගොනු නොමැතිව ජනනය කරන ලද ලැයිස්තුවක් වන අතර සැම්සුන් මුද්‍රණ යන්ත්‍රයක් නොමැත ppa:

#------------------------------------------------------------------------------#
#                            OFFICIAL UBUNTU REPOS                             #
#------------------------------------------------------------------------------#


###### Ubuntu Main Repos
deb http://us.archive.ubuntu.com/ubuntu/ yakkety main restricted universe multiverse 

###### Ubuntu Update Repos
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-security main restricted universe multiverse 
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-updates main restricted universe multiverse 
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-proposed main restricted universe multiverse 
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-backports main restricted universe multiverse 

###### Ubuntu Partner Repo
deb http://archive.canonical.com/ubuntu yakkety partner

#------------------------------------------------------------------------------#
#                           UNOFFICIAL UBUNTU REPOS                            #
#------------------------------------------------------------------------------#


###### 3rd Party Binary Repos

#### Flacon PPA - http://kde-apps.org/content/show.php?content=113388
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F2A61FE5
deb http://ppa.launchpad.net/flacon/ppa/ubuntu yakkety main

#### Gimp PPA - https://launchpad.net/~otto-kesselgulasch/+archive/gimp
## Run this command: sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 614C4B38
deb http://ppa.launchpad.net/otto-kesselgulasch/gimp/ubuntu yakkety main

#### Google Chrome Browser - http://www.google.com/linuxrepositories/
## Run this command: wget -q https://dl.google.com/linux/linux_signing_key.pub -O- | sudo apt-key add -
deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main

#### Google Earth - http://www.google.com/linuxrepositories/
## Run this command: wget -q https://dl.google.com/linux/linux_signing_key.pub -O- | sudo apt-key add -
deb [arch=amd64] http://dl.google.com/linux/earth/deb/ stable main

#### Highly Explosive PPA - https://launchpad.net/~dhor/+archive/myway
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93330B78
deb http://ppa.launchpad.net/dhor/myway/ubuntu yakkety main

#### JDownloader PPA - https://launchpad.net/~jd-team
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6A68F637
deb http://ppa.launchpad.net/jd-team/jdownloader/ubuntu yakkety main

#### Lazarus - http://www.lazarus.freepascal.org/
## Run this command:  gpg --keyserver hkp://pgp.mit.edu:11371 --recv-keys 6A11800F  && gpg --export --armor 0F7992B0  | sudo apt-key add -
deb http://www.hu.freepascal.org/lazarus/ lazarus-stable universe

#### LibreOffice PPA - http://www.documentfoundation.org/download/
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1378B444
deb http://ppa.launchpad.net/libreoffice/ppa/ubuntu yakkety main

#### MEGA Sync Client - https://mega.co.nz/
deb http://mega.nz/linux/MEGAsync/xUbuntu_16.10/ ./

#### MKVToolnix - http://www.bunkus.org/videotools/mkvtoolnix/
## Run this command: wget -q http://www.bunkus.org/gpg-pub-moritzbunkus.txt -O- | sudo apt-key add -
deb http://www.bunkus.org/ubuntu/yakkety/ ./

#### Mozilla Daily Build Team PPA - http://edge.launchpad.net/~ubuntu-mozilla-daily/+archive/ppa
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys  247510BE
deb http://ppa.launchpad.net/ubuntu-mozilla-daily/ppa/ubuntu yakkety main

#### muCommander - http://www.mucommander.com/
## Run this command: sudo wget -O - http://apt.mucommander.com/apt.key | sudo apt-key add - 
deb http://apt.mucommander.com stable main non-free contrib  

#### Opera - http://www.opera.com/
## Run this command: sudo wget -O - http://deb.opera.com/archive.key | sudo apt-key add -
deb http://deb.opera.com/opera/ stable non-free

#### Oracle Java (JDK) Installer PPA - http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886
deb http://ppa.launchpad.net/webupd8team/java/ubuntu yakkety main

#### PlayDeb - http://www.playdeb.net/
## Run this command: wget -O- http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -
deb http://archive.getdeb.net/ubuntu yakkety-getdeb games

#### SABnzbd PPA - http://sabnzbd.org/
## Run this command:  sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4BB9F05F
deb http://ppa.launchpad.net/jcfp/ppa/ubuntu yakkety main

#### SimpleScreenRecorder PPA - http://www.maartenbaert.be/simplescreenrecorder/
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 283EC8CD
deb http://ppa.launchpad.net/maarten-baert/simplescreenrecorder/ubuntu yakkety main

#### Steam for Linux - http://store.steampowered.com/about/
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F24AEA9FB05498B7
deb [arch=i386] http://repo.steampowered.com/steam/ precise steam

#### Syncthing - https://syncthing.net/
## Run this command: curl -s https://syncthing.net/release-key.txt | sudo apt-key add -
deb http://apt.syncthing.net/ syncthing release

#### Tor: anonymity online - https://www.torproject.org
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 886DDD89
deb http://deb.torproject.org/torproject.org yakkety main

#### Unsettings PPA - http://www.florian-diesch.de/software/unsettings/
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0FEB6DD9
deb http://ppa.launchpad.net/diesch/testing/ubuntu yakkety main

#### VirtualBox - http://www.virtualbox.org
## Run this command: wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox_2016.asc -O- | sudo apt-key add -
deb http://download.virtualbox.org/virtualbox/debian yakkety contrib

#### Webmin - http://www.webmin.com
## Run this command: wget http://www.webmin.com/jcameron-key.asc -O- | sudo apt-key add -
deb http://download.webmin.com/download/repository sarge contrib

#### WebUpd8 PPA - http://www.webupd8.org/
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4C9D234C
deb http://ppa.launchpad.net/nilarimogard/webupd8/ubuntu yakkety main

#### Xorg Edgers PPA - https://launchpad.net/~xorg-edgers
## Run this command: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8844C542  
deb http://ppa.launchpad.net/xorg-edgers/ppa/ubuntu yakkety main
here is a generated list without source files and no samsung printer ppa
#### Yuuguu - http://yuuguu.com
deb http://update.yuuguu.com/repositories/apt hardy multiverse

2

මෙන්න මගේ ස්ක්‍රිප්ට් එක, " list-apt-repositories", " /etc/sources.list"සහ" /etc/sources.list.d/*.list" හි ඇති සියලුම ගබඩාවන් ලැයිස්තුගත කරයි. ඔබට --ppa-onlyPPAs පමණක් පෙන්වීමට එකතු කළ හැකිය . PPAs ස්වයංක්‍රීයව ppa:USER/REPOආකෘතියට පරිවර්තනය වේ .

අදාළ කොටස් පේළි 5 list_sourcesසහ list_ppaකාර්යයන් වේ, ඉතිරිය එය ෂෙල් ස්ක්‍රිප්ට් එකකින් ඔතා තැබීම සඳහා බොයිලේරු ය.

list-apt-repositories:

#!/bin/sh

usage () {
  cat >&2 <<USAGE
$0 [--ppa-only]

Options:
  --ppa-only            only list PPAs
USAGE
  exit $1
}

list_sources () {
  grep -E '^deb\s' /etc/apt/sources.list /etc/apt/sources.list.d/*.list |\
    cut -f2- -d: |\
    cut -f2 -d' ' |\
    sed -re 's#http://ppa\.launchpad\.net/([^/]+)/([^/]+)(.*?)$#ppa:\1/\2#g'
}

list_ppa () {
  list_sources | grep '^ppa:'
}

generate=list_sources

while test -n "$1"
do
  case "$1" in
    -h|--help) usage 1;;
    --ppa-only) generate=list_ppa;;
    *)
      printf -- "Unknown argument '$1'\n" >&2
      usage 2
    ;;
  esac
  shift
done

$generate

ස්ථාපන ස්ක්‍රිප්ට් එකක් සෑදීමට, වෙනත් ස්ක්‍රිප්ටයකට නල කරන්න make-apt-repository-install-script. උත්පාදනය කළ ස්ක්‍රිප්ට් අන්තර්ක්‍රියාකාරී නොවන භාවිතය සඳහා -y/ --yesතර්කයට සහය දක්වයි (බලන්න add-apt-repository(1)).

make-apt-repository-install-script:

#!/bin/sh

if test -n "$1"
then
  cat >&2 <<USAGE
Usage: $0 < PATH_TO_LIST_OF_REPOS
       list-apt-repositories [--ppa-only] | $0

No options recognized.

Reads list of repositories from stdin and generates a script to install them
using \`add-apt-repository(1)\`. The script is printed to stdout.

The generated script supports an optional
\`-y\` or \`--yes\` argument which causes the \`add-apt-repository\` commands
to be run with the \`--yes\` flag.
USAGE
  exit 1
fi

cat <<INSTALL_SCRIPT
#!/bin/sh
y=
case "\$1" in
  -y|--yes) y=\$1;;
  '') y=;;
  *)
    printf '%s\n' "Unknown option '\$1'" "Usage: \$0 [{-y|--yes}]" >&2
    exit 1
  ;;
esac
INSTALL_SCRIPT

xargs -d'\n' printf "add-apt-repository \$y '%s'\n"

නැවතත්, වැදගත් කොටස වන්නේ xargsඅවසාන පේළියේ විධානයයි, ඉතිරිය බොයිලේරු ය.


1

එය ලබා ගැනීමට ppa.launchpad.net රේඛා ppa ලෙස එක් කරන්න: $ USER / $ PPA. * .List ගොනු වලින් ඔවුන්ගේ සම්පූර්ණ රේඛාව සමඟ වෙනත් ගබඩාවන් එක් කරන්න. ද්විත්ව රේඛා නොමැත.

#! / බින් / බාෂ්
# මගේ ~ / bin / mk_repositories_restore_script
mkdir -p ~ / bin 
x = ~ / bin / rest_repositories
echo \ # \! / bin / bash> $ x
chmod u + x $ x
(
 AP හි APT සඳහා (/ etc / apt / -name find * සොයා ගන්න. ලැයිස්තුව)
    do sed -n -e '/ ^ deb / {කරන්න
     /ppa\.launchpad/s/\(.*\/\/ Leisure ^ /] : \ 2 / p;
     /ppa\.launchpad/!s / \ (deb [\ t] * \) \ (. * $ \) / sudo apt-add-repository \ 2 / p;
    T '$ APT
 ඉවරයි
) | වර්ග කිරීම | uniq | tee -a b / bin / restore_repositories

1

මෙන්න එක් ලයිනර් එකක්:

find /etc/apt/sources.list* -type f -iname "*.list" -exec grep -viE '(^#|^$)' {} \; -print | column -tx
deb                                 http://archive.ubuntu.com/ubuntu    bionic            main        restricted
deb                                 http://archive.ubuntu.com/ubuntu    bionic-updates    main        restricted
deb                                 http://archive.ubuntu.com/ubuntu    bionic            universe
deb                                 http://archive.ubuntu.com/ubuntu    bionic-updates    universe
deb                                 http://archive.ubuntu.com/ubuntu    bionic            multiverse
deb                                 http://archive.ubuntu.com/ubuntu    bionic-updates    multiverse
deb                                 http://archive.ubuntu.com/ubuntu    bionic-backports  main        restricted  universe  multiverse
deb                                 http://security.ubuntu.com/ubuntu   bionic-security   main        restricted
deb                                 http://security.ubuntu.com/ubuntu   bionic-security   universe
deb                                 http://security.ubuntu.com/ubuntu   bionic-security   multiverse
/etc/apt/sources.list
deb                                 https://nginx.org/packages/ubuntu/  bionic            nginx
deb-src                             https://nginx.org/packages/ubuntu/  bionic            nginx
/etc/apt/sources.list.d/nginx.list

එය ෂෙල් පිටපතක් ප්‍රතිදානය නොකරයි - ප්‍රශ්නය බලන්න
stwissel

0

ස්තූතියි බොබ් ඩොඩ්ස්!
කවුරුහරි කැමති නම්, මම ඔබේ කේතය ටිකක් යාවත්කාලීන කර ඇත (ඔබට කමක් නැතැයි සිතමි) ..
මෙම ස්ක්‍රිප්ට් මඟින් යතුරු ලියනය කරනු ලබන්නේ පරිශීලක එකතු කරන ලද PPAs පමණි (/etc/apt/sources.list.d).

    #!/bin/bash
    # My ~/bin/mk_repositories_restore_script
    mkdir -p ~/bin
    x=~/bin/restore_repositories
    echo \#\!/bin/bash > $x
    chmod u+x $x
    (
    for APT in $( find /etc/apt/ -name \*.list )
    do sed -n -e '/^deb /{
          /ppa\.launchpad/s/\(.*\/\/[^\/]*.\)\([^ \t]*\)\(.*\/ubuntu.*$\)/ppa:\2/p;                                                                                                                                                                                       
        }' $APT
    done
    ) | sort | uniq | tee -a ~/bin/restore_repositories

0
sed -r -e '/^deb /!d' -e 's/^([^#]*).*/\1/' -e 's/deb http:\/\/ppa.launchpad.net\/(.+)\/ubuntu .*/ppa:\1/' -e "s/.*/sudo add-apt-repository '&'/" /etc/apt/sources.list /etc/apt/sources.list.d/*

එමඟින් හැකි විය හැකි ප්‍රභව ගබඩාවන් (deb-src) සක්‍රීය කිරීමට විධාන ජනනය නොවේ.


0

නිධි ලැයිස්තුගත කිරීම සඳහා, මම දැනටමත් පළ කර ඇති සමහර ඒවාට සමාන කෙටි ක්‍රමයක් ලබා දෙන්නෙමි, රීජෙක්ස් භාවිතයෙන් අදහස් පෙරහන් කරමි: ^ [^ #] ("පේළියේ ආරම්භයේ දී, අදහස් දැක්වූ රේඛා නොමැත"):

grep ^[^#] /etc/apt/sources.list /etc/apt/sources.list.d/*

-1

ස්ථාපනය කරන්න ppa-purge

apt install ppa-purge

ටැබ් සම්පූර්ණ කිරීමෙන් ppa ලැයිස්තුව ලබා ගන්න ...

ppa-purge -o( Tabයතුර දෙවරක් ඔබන්න)


2
ඒක ටිකක් පසුපසට. ගබඩා කිරීම හෝ සැකසීම සඳහා ෂෙල් සම්පුර්ණ කිරීමේ ප්‍රතිදානය එකතු කිරීමට OP යෝජනා කරන්නේ කෙසේද? එසේම, එහි අත්පොත පිටුවට අනුව කොඩියක් ppa-purgeනොමැත . -1-o
ඩේවිඩ් ෆෝස්ටර්
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.