Co to jest format pliku MAN?
Pliki z rozszerzeniem .man zawierają podręczniki użytkownika Unix napisane w znacznikach źródłowych roff. Dostęp do stron podręcznika można uzyskać, wydając polecenie man, a następnie nazwę programu, funkcji lub tematu. Źródło wykorzystuje pakiet makr *man* - zestaw dyrektyw poprzedzonych kropką (.TH, .SH, .B, .TP), które man renderuje na żądanie za pomocą groff lub mandoc. Otwarcie pliku .man w edytorze tekstu pokazuje te surowe znaczniki zamiast sformatowanej strony; pliki .man obsługują makra formatowania wyświetlania do kontrolowania pogrubienia, kursywy, wcięć i układu tabel.
.man jest plikiem tekstowym i można go otworzyć za pomocą dowolnego edytora tekstu, ale podręczniki użytkownika są najczęściej przeglądane za pomocą narzędzia systemowego man wywoływanego z linii poleceń. Wiele graficznych środowisk systemowych oferuje różne narzędzia do przeglądania dokumentów man. Strony podręcznika można podzielić na następujące sekcje:
- NAME - nazwa programu, narzędzia, biblioteki lub funkcji, po której następuje krótki opis
- SYNOPSIS - parametry i opcje polecenia, a opcjonalnie sygnatura funkcji C
- DESCRIPTION - szczegółowy opis polecenia i jego funkcji
- EXAMPLES - przykłady użycia polecenia
- SEE ALSO - lista powiązanych funkcji lub poleceń
Podręczniki użytkownika Unix/Linux nie są powszechnie zapisywane jako pliki .man na dysku. Zazwyczaj podręczniki są przechowywane z przyrostkiem wskazującym, do której sekcji podręcznika należy plik - na przykład ls.1 lub printf.3 - a zainstalowane strony są zazwyczaj skompresowane gzipem jako nazwa.sekcja.gz, dekompresowane w sposób przezroczysty przez man. Strony podręcznika są zazwyczaj w języku angielskim, chociaż niektóre podręczniki są lokalizowane w różnych dystrybucjach.
Dokumenty man są podzielone na ponumerowane sekcje. Polecenie man domyślnie wyświetla pierwszy pasujący wpis z 7 sekcji (Unix System V) lub 8 (Linux/BSD), którymi są:
- Polecenia ogólne
- Wywołania systemowe
- Funkcje biblioteczne C
- Pliki specjalne i sterowniki urządzeń
- Formaty plików i pliki konfiguracyjne
- Gry i wygaszacze ekranu
- Różne / strony przeglądowe
- Administracja systemem i demony (tylko Linux/BSD)
Dostęp do danej sekcji wymaga wydania polecenia man numer_sekcji nazwa - na przykład man 5 passwd. Wyjście podręcznika można przekierować do innej aplikacji w celu łatwiejszego czytania, na przykład do cat lub less.
Bezpieczeństwo
RYZYKO: LOWŹródło strony man jest zwykłym tekstem i nie wykonuje się podczas przeglądania. Jedyną teoretyczną przestrogą jest to, że roff jest językiem makr kompletnym w sensie Turinga, a groff historycznie miewał błędy parsowania, więc renderowanie pliku .man z całkowicie niezaufanego źródła najlepiej wykonywać za pomocą bezpieczniejszego, izolowanego mandoc zamiast pełnego groff. W normalnym użytkowaniu (czytanie dokumentacji z pakietów i projektów) plik .man jest nieszkodliwy; otwarcie go w edytorze tekstu jest całkowicie bezpieczne. Nie należy go mylić z profilem obowiązkowym Windows .man, który jest gałęzią rejestru, a nie dokumentem.
Szczegóły formatu
w pigułce- Obowiązkowy profil użytkownika Windows 2000/XP - Starszy plik .man systemu Windows to profil użytkownika mobilnego tylko do odczytu (zmieniona nazwa gałęzi rejestru NTUSER.DAT) - niepowiązany ze stronami man Unix; pierwotne znaczenie nazwy w bazie danych.
- Plik pamięci/menu FoxPro / dBASE - Niektóre stare narzędzia bazodanowe DOS używały rozszerzenia .man dla skompilowanych danych menu lub notatek; format przestarzały.
Programy otwierające pliki MAN
Szczegóły techniczne
specyfikacja| Kodowanie pliku | Zwykły tekst ASCII lub UTF-8; brak zawartości binarnej lub wymaganej sygnatury BOM |
| Typ MIME | text/troff (główny); rozpoznawany również jako application/x-troff-man lub text/plain |
| Język znaczników | roff/troff przy użyciu pakietu makr man (an-old macros); wywołania makr poprzedzone kropką muszą pojawiać się na początku linii |
| Makro tytułowe | .TH (nagłówek tytułowy) - zazwyczaj pierwsza linia niebędąca komentarzem; deklaruje nazwę strony, numer sekcji, datę i pakiet źródłowy |
| Standardowe sekcje | NAME, SYNOPSIS, DESCRIPTION, OPTIONS, EXAMPLES, FILES, ENVIRONMENT, BUGS, SEE ALSO - każda wprowadzana przez makro .SH |
| Numeracja sekcji stron man | 7 sekcji w tradycyjnym Unix (System V); 8 w Linux i BSD - sekcja 8 obejmuje polecenia administracji systemem |
| Typowy rozmiar pliku | 1 KB - 100 KB; większość stron mieści się w przedziale od 5 KB do 30 KB |
| Kompresja na dysku | Zainstalowane strony są powszechnie kompresowane gzipem (np. ls.1.gz) i dekompresowane w sposób przezroczysty przez man podczas odczytu |
| Silnik renderujący | groff (GNU troff) w systemie Linux; mandoc w systemach BSD i nowoczesnym macOS, który zastąpił groff jako domyślny renderer man |
| Typowe nazewnictwo plików | Rozszerzenie z numerem sekcji jest standardem na dysku (ls.1, printf.3, passwd.5); rozszerzenie .man jest używane głównie przez dokumentację zewnętrzną lub dołączoną |
| Ścieżka instalacji | /usr/share/man/manN/ w systemach Linux i BSD, gdzie N to numer sekcji; macOS używa /usr/share/man/ z tym samym układem katalogów |
| Formaty wyjściowe | Tekst terminalowy przez pager (less), PostScript, PDF, HTML i zwykły tekst - wszystkie generowane na żądanie przez groff -T |
| Powiązane formaty źródłowe | mdoc (alternatywny zestaw makr BSD), pod2man (Perl POD do man), Sphinx man builder oraz ronn (konwerter Markdown-to-man) |
| Deweloper / pochodzenie | Bell Labs (oryginalny system man Unix, 1971); makra man i groff utrzymywane przez Projekt GNU |
| Wydano | 1971 (Unix Programmer's Manual, V1); man macros standardized through the 1970s-80s |
| Najnowsza wersja | N/A (roff/man-macro convention; groff is the active implementation) |
| Otwarty standard | Tak · bezpłatny (royalty-free) |
| Specyfikacja | man7.org |
Konwersje MAN
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki MAN.