Come ottenere un elenco delle home page del pacchetto in una sezione del repository dalla riga di comando?


1

Qualche tempo fa, ho chiesto qui come ottenere l'elenco dei pacchetti in una sezione del repository dalla riga di comando .

Secondo Synaptic Package Manager, molti di questi pacchetti dispongono di una home page. Come posso aggiungere questo al mio elenco di pacchetti generato automaticamente dalla riga di comando?

Gestione pacchetti Synaptic che mostra il collegamento alla home page del pacchetto

Non sembra essere semplice come aggiungere un'opzione argomento a una delle risposte precedenti.

Risposte:


2

Potresti estendere la risposta di Braim solo per ritirare i nomi dei pacchetti, quindi ottenere le informazioni complete sul pacchetto per ciascuno e awkquello giù per il formato.

aptitude -F'%p' search '?section(hamradio) ?architecture(amd64)' \
| xargs apt-cache show \
| awk '/^Package/ {printf("\n"$2)} /^Homepage/ {printf (": "$2)}'

Sto aggiungendo un ulteriore limite di architettura alla query per bloccare (nel mio caso) i duplicati nell'architettura i386 in arrivo. Potresti ometterlo se lo desideri.

acfax
aldo
antennavis: http://www.include.gr/antennavis.html
aprsd: http://sourceforge.net/projects/aprsd/
aprsdigi: http://aprsdigi.sourceforge.net/

I primi due non hanno home page specificate. Gli ultimi tre lo fanno.

Se vuoi solo quelli con le homepage, ti suggerisco di passare awka stampare solo quando trova una homepage. Conserveremo il nome del pacchetto in una variabile. Così:

... | awk '/^Package/ {p=$2} /^Homepage/ {printf ("%s: %s\n", p, $2)}'

1
Molto bello tubazioni da aptitudea apt-cache showe, infine, a awknaturalmente.
Serge Stroobandt,

Non c'è da stupirsi che tu abbia 126.000 rappresentanti e 26 distintivi d'oro! ;-)
Fabby,

Questa risposta mi ha dato un grande inizio testa a tirare un paio di trucchi con $1="";sub(FS,"");e awkcondizionali.
Serge Stroobandt,

0

Ho ripulito la grande risposta di Oli e l'ho resa condizionata . L' $1="";sub(FS,"");hacking del codice elimina il primo Description-en:campo e il singolo separatore di campo spaziale, il tutto in modo molto conciso. È spiegato qui .

aptitude -F'%p' search '~r native ~s hamradio' \
    |xargs apt-cache show \
    |awk '/^Package/{name=$2} \
          /^Description-en/{$1="";sub(FS,"");description=$0}
          /^Description-en/{description=$0} \
          /^Homepage/{url=$2} \
          /^$/{if(url) {printf("|["name"]("url")|"description"|\n"); url=""} \
               else {printf("|"name"|"description"|\n")}}'

Ora produce righe complete della tabella Markoc Pandoc , che alla fine vengono convertite in una tabella HTML sul mio sito Web .

|acfax|Receive faxes using your radio and sound card|
|aldo|Morse code training program|
|[antennavis](http://www.include.gr/antennavis.html)|antenna radiation pattern visualization software|
|[aprsd](http://sourceforge.net/projects/aprsd/)|Internet Gateway for the Automatic Position Reporting System|
|[aprsdigi](http://aprsdigi.sourceforge.net/)|digipeater for APRS|
|[ax25-apps](http://aprsdigi.sourceforge.net/)|AX.25 ham radio applications|
|[ax25-node](http://aprsdigi.sourceforge.net/)|Amateur Packet Radio Node program|
|[ax25-tools](http://aprsdigi.sourceforge.net/)|tools for AX.25 interface configuration|
|[ax25-xtools](http://aprsdigi.sourceforge.net/)|tools for AX.25 interface configuration -- X11-based|
|[ax25mail-utils](http://aprsdigi.sourceforge.net/)|hamradio utilities for fbb|
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.