Это решение работает очень хорошо, но это немного шутка, потому что первое, что я подумал, когда прочитал ваш вопрос, было: «Кто все еще буквально использует человека из командной строки? Разве все не просто Google гугл-страницы, которые они хотят (чтобы они получили такие необычные вещи, как неограниченная прокрутка)? ». Затем я понял, что сайты, которые я обычно использую в Google, имеют оба типа команд, так почему бы просто не использовать их для обеспечения единого интерфейса man-страницы для всех команд. Следовательно, это веселье родилось.
Это требует подключения к Интернету для любых записей, которые вы еще ни разу не просматривали. Также нужны эти два небольших приложения, которые отсутствуют в стандартной установке Ubuntu:
sudo apt-get install tidy html2text
Они не являются абсолютно необходимыми, но они помогают выглядеть немного лучше. Tidy очистит HTML, а html2text отформатирует этот html как форматированный текст (что обычно довольно тривиально, поскольку большинство этих сайтов уже отформатированы и просто заключены в теги <pre>.
Теперь все, что вам нужно сделать, это добавить это в конец ~/.profile
:
function iman() {
if [ ! -d "/usr/share/iman" ]; then
sudo mkdir -m a=rwx /usr/share/iman
fi
if [ ! -f "/usr/share/iman/$1.html" ]; then
curl "http://unixhelp.ed.ac.uk/CGI/man-cgi?$1"| tidy -n -asxml 2>/dev/null| html2text > "/usr/share/iman/$1.html";
fi
if [ -f "/usr/share/iman/$1.html" ]; then
cat "/usr/share/iman/$1.html";
else
echo "Entry not found."
fi
}
После того, как вы выйдете из системы, а затем вернетесь в нее, вы сможете набрать:
iman cd
и он покажет страницу руководства для cd
.
При этом используется каталог данных (/ usr / share / iman), чтобы минимизировать наши сетевые требования (поэтому он будет работать для записей, которые вы уже нашли раньше, даже без подключения), а также для минимизации нагрузки на этот случайный сайт man-страниц linux Я нашел с записями системы, которые мы хотим в этом также). Если вы больше не используете это, вы захотите удалить это, чтобы освободить место на диске.
Надеюсь, все остальное довольно просто.
echo
получается встроенная команда, но есть страница руководства?