Де останній вихідний код команди man для Linux?


20

Я шукаю останній вихідний код команди man, версія в моєму Linux досить стара (v1.6f), але я не вдався після гуглінгу на деякий час.

Я маю на увазі останній вихідний код man, man-pagesале не сам бінарний файл /usr/bin/man, який можна скласти та встановити.

Відповіді:


19

Зазвичай ви можете запитувати свій дистрибутив, щоб побачити, звідки беруться джерела. Наприклад, я на Fedora, і я бачу, що manкоманда надходить з man-dbпакета:

$ rpm -qf /usr/bin/man
man-db-2.6.7.1-16.fc21.x86_64

Тоді я можу запитати man-dbпакет для URL-адреси вище:

$ rpm -qi man-db | grep -i url
URL         : http://www.nongnu.org/man-db/

І ось ви, http://www.nongnu.org/man-db/ .

Ви можете виконати подібну послідовність кроків із системами упаковки, що використовуються в інших дистрибутивах.


Дякую, я вже отримав man-db після того, як я опублікував це питання, здається, я не можу просто скомпілювати людину з вихідного коду через багато залежностей.
— CodyChan

Це правда. Вам доведеться спочатку вирішити всі залежності. навіть тоді ваш новий чоловік бінарний може не бути корисним вам через залежність від інших нових бінарних файлів.
— fpmurphy

1
Якщо є лише лінійні залежності, це легко ;-) Є програмні системи лінії GNOME, які мають кругові залежності. Я сподіваюся, що деякі розробники ОСС навчаться створювати джерела лише з документально підтвердженими лінійними залежностями.
— schily

1
Для довідки в майбутньому, на основі розподілу Debian еквівалентні команди dpkg -S /usr/bin/manіapt-cache show man-db | grep Homepage
— Tim

2

У дистрибутивах на базі Debian, таких як Ubuntu, ви можете знайти та завантажити вихідний код, як показано нижче:

$ which man
/usr/bin/man
$ dpkg --search /usr/bin/man
man-db: /usr/bin/man
$ apt-get source man-db

Це дозволить помістити вихідний код у поточний робочий каталог.


Дякую, це мені допомогло. Було б добре, якби цю відповідь можна було якось узагальнити.
— Аарон Хол

-2

Linux - це не операційна система, а лише ядро. Тож теоретично кожен дистрибутив може використовувати все, що завгодно.

Навіть rpm не обов'язково використовується для кожного дистрибутива Linux, тому перший крок - з’ясувати, яка реалізація використовується. Зазвичай це можна зробити, використовуючи stringsдвійковий код, а потім використовувати значну рядок у подвійних лапках як рядок пошуку в Google.


1
Якщо rpm -qfабо dpkg -Sабо еквівалент вашої системи упаковки для параметра "" $ (команда -v man) "повертає ім'я пакету, то цей метод буде набагато надійнішим, ніж гуглінг для рядків, знайдених у двійковій системі. Майте на увазі, що більшість дистрибутивів виправляють програмне забезпечення від висхідного потоку. Тож вихідний пакет для вашого розповсюдження - це єдине місце, де можна знайти точний вихідний код, складений для вашого / usr / bin / man.
— Стефан Шазелас

Існує більше десятка різних систем упаковки, тож вам потрібно було б згадати багато методів ..... але ви вірні: загалом, багато дистрибутивів не співпрацюють, або виправляйте помилки в програмному забезпеченні або не повідомляйте про корисні патчі. вище за течією.
— schily
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.