ручки для мого розпалу?


9

Я хотів би прочитати підручні книги Unix на своєму запалі. Я знаю, що можу просто перенаправити вихідний файл у файл і надати йому розширення .txt. Але чи є зручний спосіб їх масового перетворення у формат з належними перехресними посиланнями?

Редагувати: Вибачення за мою поведінку в цьому питанні. Я сказав пат, що я прийму коментар, якщо він буде поданий як відповідь, і тоді надійдуть кращі відповіді, і я не дотримав своєї обіцянки (Вибачте). Я з ентузіазмом прийняв відповідь Калеба, що створює html-версії manpages; а потім через деякий час, коли я насправді намагався перенести файли в розпал, я виявив, що розпал не відображатиме HTML-файли; і я змінив прийняття без пояснень (Вибачте). Схоже, що для kindle потрібен .txt або .pdf (або один із різних реальних форматів електронних книг). Я сподіваюся, що я пояснив себе.

Крім того, я не мав реалістичного розуміння того, скільки, скільки манжетів існує з дистрибутивом Debian Linux, і тому коментар Калеба щодо вибору колекції "Best Of" є найкращою ідеєю. Але я насправді не схильний намагатися робити це сам (що є необхідною умовою для запитань на сайтах StackExchange), тому мені не комфортно запитати, як вибрати "Best Of", хоча це дійсно необхідно практично для того, щоб це зробити.


Відповіді:


2

Щоб перетворити кожну сторінку man у pdf, яку я зробив man -k . > temp. Я створив тимчасовий файл та сценарій з назвою file.sh:

#! /bin/bash
if [ $# -eq 1 ] ; then
    to_pdf=$(which ps2pdf)
    if [ -z "$to_pdf" ] ; then
    to_pdf=$(which pstopdf)
    fi
    name="$1"
    case "$to_pdf"  in
        *pstopdf) man -t "$name" | "$to_pdf" -i -o "$fname.pdf" ;;
        *ps2pdf)  man -t "$name" | "$to_pdf" - "$name.pdf" ;;
        *)        man -t "$name" > "$fname.ps"
    esac
    exit $?
fi
echo "Wrong number of parameters"
exit 1

Я написав файл python pythonfile.py

import os
f=open("temp","r")
for i in f:
    c="bash file.sh "+str(i)
    os.system(c)`

Тоді я і зробив

python pythonfile.py 

Це створить pdf для кожної чоловічої сторінки окремо всередині вашого робочого каталогу.


7

Щоб скинути всі розділи всіх man-сторінок у вашій системі до html, ви можете спробувати щось подібне з порожнього каталогу:

IFS=\.
find /usr/share/man/man* -type f -exec basename {} .gz \; |
    while read page section; do
        man -Thtml $section $page > $page.$section.html
    done

Джи, це обов'язково потрібно while, чи не так? :)
luser droog

1
@luserdroog: Так, це дійсно так. Ви просили масово перетворити кожну сторінку Unix у вашій системі ! Якщо те, що ви насправді хочете, - це «найкраща колекція» для перегляду у вільний час, мабуть, інший підхід, мабуть, в порядку.
Калеб
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.