Иногда вы чувствуете себя подавленным и хотите «взбодриться» — как мне добавить эту ручную запись в Unix?

Иногда вы чувствуете себя подавленным и хотите «взбодриться» — как мне добавить эту ручную запись в Unix?
Cris-Mac-Book-2:src cris$ man up
No manual entry for up

Как я могу исправить эту ситуацию?

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

Кроме того, если когда-нибудь на моей рабочей станции появятся пользователи женского пола, я обязательно сделаю следующее ln:

Cris-Mac-Book-2:src cris$ sudo link /usr/bin/man /usr/bin/woman
Cris-Mac-Book-2:src cris$ woman
What manual page do you want?
Cris-Mac-Book-2:src cris$ 

Хотя мне, вероятно, следует изменить это на Which womanual page do you want?— потребуется ли для этого перекомпиляция или есть патч?

решение1

Вот, кажется, хорошие инструкции по добавлению новой страницы руководства:

HowTo: Linux / UNIX Создание страницы руководства

Короче говоря, man-страница — это просто текстовый файл с дополнительной информацией о форматировании для troff.

Обычно в формате

.\" Manpage for up.
.\" Contact [email protected] to correct errors or typos.
.TH man 8 "06 May 2010" "1.0" "name man page"
.SH NAME
up \- into a higher position or level
.SH SYNOPSIS
up [anything you like]
.SH DESCRIPTION
up is a pretty good place to be
.SH OPTIONS
up does not take any options, though you can choose the speed of your acent 
.SH SEE ALSO
yes(1), time cat (2) cal 3() 
.SH BUGS
No known bugs. Gravity is not a bug, "Its a feature"
.SH AUTHOR
Chris Stringfellow ([email protected])

Сохранить это какup

Затем вы можете просмотреть страницу руководства man ./upиз того же каталога.

Страницы руководства обычно находятся в архиве /usr/local/man/man8/и сжаты

Вы можете скопировать вашу страницу руководства с помощью, а cp up /usr/local/man/man8/up.1затем сжать ее с помощью gzipgzip /usr/local/man/man8/name.1

Затем вы можете проверить это с помощью man up — это должно вывести что-то вроде этого

решение2

Хотя мне, вероятно, следует изменить это на Which womanual page do you want?— потребуется ли для этого перекомпиляция или есть патч?

Наилучшие результаты дает повторная компиляция, но пока что подойдет и такой вариант:

#!/bin/bash

ARG=${1/woman/man}

man $ARG > /dev/null 2>&1

if [ $? -eq 0 ]; then
    man $ARG 2> /dev/null \
        | sed \
            -e 's/\(m[ae]n\)/wo\1/g' \
            -e 's/\(M[AE]N\)/WO\1/g' \
            -e 's/M\([ae]n\)/Wom\1/g' \
            -e 's/    //' \
            -e 's/\([^ ]\)  /\1 /g' \
        | less
else
    man $ARG 2>&1 | sed -e 's/\(m[ae]n\)/wo\1/'
fi

Сохранить как /usr/sbin/woman, установить разрешения на выполнение и начать тестирование:

woman
woman down
woman woman

Связанный контент