Загрузка целых страниц Lubuntu / Ubuntu?

3

Я знаю о этой странице , что почти то, что я хочу. К сожалению, это не актуально.

Что я хотел бы сделать, так это полное описание man-страниц Ubuntu в хороший, удобный для чтения, формат PDF. Я буду принимать другие форматы, но я бы предпочел индексированный PDF-файл для простоты и переносимости.

Я также знаю HTTrack , который может вытащить страницы в формате HTML. Есть несколько причин, по которым я хочу этого избежать - основная причина заключается в том, что не очень приятно делать с их пропускной способностью и серверами.

Я искал сайт Ubuntu, использовал внешнюю поисковую систему и искал этот сайт. Я нашел один ответ , который привел меня обратно к HTTrack, который является потенциальным решением, но не идеальным решением и, как уже упоминалось, не очень хорош для их серверов или пропускной способности.

Еще более особенным было бы получить это специально для Lubuntu , потому что есть несколько отличий в программном обеспечении и я - жадный пользователь Lubuntu, но, если нужно, я могу выполнить только с man-страницами Ubuntu.

Причина, по которой я хочу это, состоит в том, что, ну, я бы хотел ее прочитать - полностью. Это больше похоже на книгу, чем на файл, который вызывается при необходимости. Я хочу иметь возможность читать его, пока у меня есть только доступ к моему телефону, планшету или другому вычислительному устройству и в более удобном для чтения формате, чем обычно используются man-страницы.

EDIT:

В частности, для Ubuntu (или Lubuntu) версии 15.10, как указано в тегах и заголовке. Кроме того, да - все man-страницы (даже избыточные и короткие). Я знаю, что это много информации, которая является одной из причин, по которой я пытаюсь избежать использования HTTrack.

    
задан KGIII 18.11.2015 в 15:26
источник

3 ответа

3
  

Еще более особенным было бы получить это специально для Lubuntu, потому что есть несколько отличий в программном обеспечении, и я - жадный пользователь Lubuntu, но, если нужно, я могу выполнить только с man-страницами Ubuntu.

В Lubuntu и Ubuntu нет различий между manpages. Одна из точек становления признанным ароматом - использование тех же репозиториев, что и Ubuntu, поэтому программное обеспечение идентично, но только исходные точки отличаются.

Кроме того, Ссылка страдает от ошибки, в которой не различаются одинаковые имена manpages из разных пакетов - отображаются файлы последнего показанного пакета вверх.

Вместо того, чтобы забивать сайт manpages, забейте репозитории.

Получить список manpages, например, для архитектуры binary-amd64 (должен быть идентичен другим):

mkdir temp
cd temp
curl http://archive.ubuntu.com/ubuntu/dists/wily/Contents-amd64.gz | 
  gunzip | 
  grep 'share/man' |
  sed 's/.* //;s/,/\n/g' | 
  awk -F/ '{print $NF}' | 
  sort -u > packages.txt
while IFS= read -r package
do
    apt-get download "$package"
    dpkg-deb --fsys-tarfile "$package"*.deb | tar x ./usr/share/man
    mkdir "$package"-manpages
    find ./usr/share/man/man* -type f -exec mv -t "$package"-manpages {} +
    rm "$package"*.deb
    for page in "$package"-manpages/*
    do
        man -t "$page" | ps2pdf - > "$page".pdf
    done
done < packages.txt

Если, конечно, это будет потреблять безумное количество полосы пропускания - серверы репозитория используются для него, вопрос: есть ли ваша сеть для выполнения задачи?

    
ответ дан muru 18.11.2015 в 16:16
2

Для этого подхода вам понадобятся html2ps , ps2pdf и рабочая установка LaTeX. Вы должны уметь устанавливать все требования с помощью

sudo apt-get install html2ps ghostscript texlive-latex-base

После установки необходимых пакетов запустите это, чтобы получить справочные страницы в виде файлов pdf:

curl http://manpages.ubuntu.com/manpages/wily/en/man1/ | 
    grep -oP 'href="\K.*?\.1\.html' | 
        while read man; do 
            wget http://manpages.ubuntu.com/manpages/wily/en/man1/"$man" && 
                html2ps "$man"  | ps2pdf - "${man/.html/.pdf}"
        done

Теперь вы должны иметь (огромную) коллекцию PDF-файлов в каталоге, в котором вы запускали команду. Кстати, обязательно запустите команду в новом пустом каталоге . . р>

Теперь, чтобы объединить их в один, проиндексированный PDF-файл, вам понадобится LaTeX, и вам нужно будет переименовать их, потому что LaTeX не любит . в именах файлов:

rename 's/\./-/g;s/-pdf/\.pdf/' *pdf
cat <<EoF > man1.tex   
\documentclass{article}
\usepackage[colorlinks=true,linkcolor=blue]{hyperref}
\usepackage{pdfpages}
\begin{document}
\tableofcontents
\newpage
EoF
for f in *.pdf; do
    file="${f/.pdf/}"
    printf '\section{%s}\n\includepdf[pages=-]{%s}\n\n' "$file" "$f" >> man1.tex
done
echo "\end{document}" >> man1.tex
pdflatex man1.tex && pdflatex man1.tex

Результатом является проиндексированный PDF-файл всех справочных страниц (для тестирования я использовал только 10):

    

ответ дан terdon 18.11.2015 в 17:45
0
  

Обновлено на основе обсуждения чата

Вы хотите получить все файлы в формате PDF (или HTML). Никакая система, о которой я знаю, ни какой-либо Distro, если на то пошло, предоставляет полный набор всех файлов для вашего просмотра. Это будет million страниц, и я предполагаю, что потребуется много и много места для хранения, из которых бесполезно хранить на самом деле. Это также забивает сервер manpages, где существующие файлы уже находятся в формате веб-просмотра. Если вы действительно хотите достичь этого, вы сами конвертируете manpages и загружаете все пакеты в репозитории, содержащие manpages. (Это также одинаково зло)

Вам не нужно читать все manpages , и я не знаю, почему вам нужно столько страниц. (Представьте себе семисот тысячную энциклопедию, это то, о чем вы просите)

  

Этот раздел был до того, как чат очистил неправильные представления о том, что было задано

Я не думаю, что для каждого есть «PDF», но вы можете создавать PDF-файлы для manpages, которые вы хотите использовать.

Существует сайт, который содержит manpages для разных выпусков Ubuntu для разных пакетов в репозиториях Ubuntu. Предполагая, что рассматриваемая управляющая страница находится с Пакет репозитория, вы можете открыть там man-страницу, а затем распечатать их в файле (через Печать страницы или иначе), а затем сохранить их как PDF-файл, который затем можно использовать в другом месте.

Недостаток: это одна справочная страница за раз - вам придется потратить время, чтобы получить те, которые вы хотите.

  

(Примечание: в PDF все manpages будут адским проектом, поэтому я сомневаюсь, что вы найдете PDF-файлы для каждой man-страницы, которую хотите ... что обычно делается вверх по течению, а не Ubuntu).

    
ответ дан Thomas Ward 18.11.2015 в 15:31