Справочные страницы по Git Bash в Windows 7

9576
Prasanth

Я использую Git bash в Windows 7. Это дает мне возможность использовать большинство команд, которые я использовал в оболочке bash на моем компьютере с Ubuntu. Но команды man и info не работают. Есть ли способ заставить эти (невероятные) команды документирования работать над оболочкой Git bash в Windows?

13

7 ответов на вопрос

7
Rich Homolka

Это может быть немного излишним, но вы можете загрузить Cygwin, который будет включать в себя bash, manи информация читатели любят pinfo.

Установщик cygwin позволит вам настроить вашу установку на довольно маленькое подмножество cygwin.

Не перегибать ни в малейшей степени; Кажется довольно распространенным, что кто-то захочет получить опыт работы с Unixy в Windows и по ошибке установит Git Bash, думая, что это способ его получить. Тем временем Cygwin на самом деле обеспечивает один, возможно, в максимально возможной степени или почти совсем. Aaron Miller 10 лет назад 1
6
Mr. Dave

You can get man pages working on Git's bash environment, but it's probably more convenient to consider other alternatives that take less work.

I also don't have much rep on SuperUser, so I'm sad to say I can't really give all the links I need to in the response. I re-posted my response on Tumblr.

In summary:

  • Git's bash is a part of the msysGit project.
  • msysGit is a fork of the MinGW and MSYS project
  • You'll need either msysGit or MinGW to install MinGW-get
  • You'll need MinGW-get to install Groff
  • You'll need Groff to run these scripts to give you a man command from within the msys bash shell
  • With those scripts in place, you can read man pages. You'll just need to download them to the path you've indicated in the scripts.

Good luck.

Вы можете установить man с помощью MinGW-get install msys-man. Man также доступен в виде двоичного файла для Windows: https://sourceforge.net/projects/ezwinports/files/ (можно найти в FAQ: http://www.mingw.org/wiki/FAQ#toc10). На этой странице также есть groff. Либо, возможно, будет работать быстрее, чем эти сценарии. Sam Hasler 10 лет назад 2
@SamHasler msys-man великолепен. Спасибо за совет, я не знаю, как я пропустил это. Mr. Dave 10 лет назад 0
2
Sathya

Вы можете использовать онлайн-документацию.

Справочные страницы Linux онлайн и информационные страницы GNU

Есть ли программы, которые будут подключаться к этим веб-страницам из командной строки и отображать результат? так что я все еще могу набрать info grep на оболочке и получить результаты там? Prasanth 12 лет назад 0
@Prasanth, возможно, вы можете сделать Wget и затем возьмите это. Sathya 12 лет назад 1
или он мог сделать это "завиток" http://man.he.net/?topic=§Ion = all "`. Заменить ``с командой, которую вы ищете mr5 6 лет назад 0
2
mr5

В дополнение к ответу Сатья, вы также можете сделать это в bash для Windows:

curl -v --silent "http://man.he.net/?topic=<command_name>&section=all" 2>&1 | sed -n "/<PRE>/,/<\/PRE>/p" 

Просто замените <command_name>команду, которую вы ищете.

Пример вывода для команды ls:

<PRE> ОПИСАНИЕ ls [ОПЦИЯ] ... [ФАЙЛ] ...

ОПИСАНИЕ Выводит информацию о ФАЙЛАХ (текущий каталог по умолчанию). Сортируйте записи в алфавитном порядке, если не указан ни -cftuvSUX, ни --sort.

 Mandatory arguments to long options are mandatory for short options too.  -a, --all do not ignore entries starting with .  -A, --almost-all do not list implied . and ..  --author with -l, print the author of each file  -b, --escape print C-style escapes for nongraphic characters  --block-size=SIZE scale sizes by SIZE before printing them. E.g., `--block-size=M' prints sizes in units of 1,048,576 bytes. See SIZE format below.  -B, --ignore-backups do not list implied entries ending with ~  -c with -lt: sort by, and show, ctime (time of last modification of file status information) with -l: show ctime and sort by name otherwise: sort by ctime, newest first  -C list entries by columns  --color[=WHEN] colorize the output. WHEN defaults to `always' or can be `never' or `auto'. More info below  -d, --directory list directory entries instead of contents, and do not derefer- ence symbolic links  -D, --dired generate output designed for Emacs' dired mode  -f do not sort, enable -aU, disable -ls --color  -F, --classify append indicator (one of */=&gt;@|) to entries  --group-directories-first group directories before files.  augment with a --sort option, but any use of --sort=none (-U) disables grouping  -G, --no-group in a long listing, don't print group names  -h, --human-readable with -l, print sizes in human readable format (e.g., 1K 234M 2G)  --si likewise, but use powers of 1000 not 1024  -H, --dereference-command-line follow symbolic links listed on the command line  --dereference-command-line-symlink-to-dir follow each command line symbolic link that points to a direc- tory  --hide=PATTERN do not list implied entries matching shell PATTERN (overridden by -a or -A)  --indicator-style=WORD append indicator with style WORD to entry names: none (default), slash (-p), file-type (--file-type), classify (-F)  -i, --inode print the index number of each file  -I, --ignore=PATTERN do not list implied entries matching shell PATTERN  -k like --block-size=1K  -l use a long listing format  -L, --dereference when showing file information for a symbolic link, show informa- tion for the file the link references rather than for the link itself  -m fill width with a comma separated list of entries  -n, --numeric-uid-gid like -l, but list numeric user and group IDs  -N, --literal print raw entry names (don't treat e.g. control characters spe- cially)  -o like -l, but do not list group information enclose entry names in double quotes  --quoting-style=WORD use quoting style WORD for entry names: literal, locale, shell, shell-always, c, escape  -r, --reverse reverse order while sorting  -R, --recursive list subdirectories recursively  -s, --size print the allocated size of each file, in blocks  -S sort by file size  --sort=WORD sort by WORD instead of name: none -U, extension -X, size -S, time -t, version -v  --time=WORD with -l, show time as WORD instead of modification time: atime -u, access -u, use -u, ctime -c, or status -c; use specified time as sort key if --sort=time  --time-style=STYLE with -l, show times using style STYLE: full-iso, long-iso, iso, locale, +FORMAT. FORMAT is interpreted like `date'; if FORMAT is FORMAT1&lt;newline&gt;FORMAT2, FORMAT1 applies to non-recent files and FORMAT2 to recent files; if STYLE is prefixed with `posix-', STYLE takes effect only outside the POSIX locale  -t sort by modification time, newest first  -T, --tabsize=COLS assume tab stops at each COLS instead of 8  -u with -lt: sort by, and show, access time with -l: show access time and sort by name otherwise: sort by access time  -U do not sort; list entries in directory order  -v natural sort of (version) numbers within text  -w, --width=COLS assume screen width instead of current value  -x list entries by lines instead of by columns  -X sort alphabetically by entry extension  -Z, --context print any SELinux security context of each file  Using color to distinguish file types is disabled both by default and with --color=never. With --color=auto, ls emits color codes only when standard output is connected to a terminal. The LS_COLORS environment variable can change the settings. Use the dircolors command to set it. 

Статус выхода: 0, если все в порядке,

 1 if minor problems (e.g., cannot access subdirectory),  2 if serious trouble (e.g., cannot access command-line argument). 

Автор Автор Ричард М. Столлман и Дэвид Маккензи.

Сообщение об ошибках Сообщайте об ошибках на домашнюю страницу bug-coreutils@gnu.org GNU coreutils: < http://www.gnu.org/software/coreutils/> ; Общая помощь с использованием программного обеспечения GNU: < http://www.gnu.org/gethelp/> ; Сообщайте об ошибках перевода на < http://translationproject.org/team/> ;

АВТОРСКОЕ ПРАВО Copyright (C) 2011 Free Software Foundation, Inc. Лицензия GPLv3 +: GNU GPL версии 3 или более поздней версии < http://gnu.org/licenses/gpl.html> ;. Это бесплатное программное обеспечение: вы можете свободно изменять и распространять его. НЕ ПРЕДОСТАВЛЯЕТСЯ ГАРАНТИИ, если это разрешено законом.

СМОТРИ ТАКЖЕ Полная документация для ls поддерживается в виде руководства в формате Texinfo. Если на вашем сайте правильно установлены программы info и ls, команда

 info coreutils 'ls invocation'  should give you access to the complete manual. 

GNU coreutils 8.12.197-032bb сентябрь 2011 г.
<STRONG> <A HREF="/man1/LS"> LS (1) </A> </ STRONG> </ PRE>

2
Pianosaurus

Я собрал воедино некоторые другие ответы, чтобы получить manкоманду, которую можно использовать, как если бы она была изначально. Просто вставьте следующее в свой .bashrc, и либо в sourceнего, либо заново откройте свой терминал.

function man { local section=all if [[ "$1" =~ ^[0-9]+$ ]]; then section="$1"; shift; fi local doc="$(curl -v --silent --data-urlencode topic="$@" --data-urlencode section="$section" http://man.he.net/ 2>&1)" local ok=$? local pre="$(printf '%s' "$doc" | sed -ne "/<PRE>/,/<\/PRE>/ { /<PRE>/ { n; b; }; p }")" [[ $ok -eq 0 && -n "$pre" ]] && printf '%s' "$pre" | less || printf 'Got nothing.\n' >&2 return $ok } 

Он также поддерживает запрос определенных разделов man, например, man 3 printfдля системного вызова.

Слабые стороны: Источник (man.he.net) не совсем API RESTful, и он возвращает 200, даже когда ничего не найдено, поэтому трудно дать точные сообщения об ошибках. Вместо этого, это просто печатает «Получил ничего», независимо от того, в чем проблема. Это, вероятно, может быть улучшено. Кроме того, результирующая страница содержит html-сущности, такие как &lt;вместо <, что делает некоторые строки использования некрасивыми.

1
Justin

Ответ, от этого вопроса, может быть полезен:

Предоставляет вам информацию для команды прямо в окне bash.

Краткая справка по команде Git

git [command] -help

Открывает онлайн информацию о команде в вашем браузере.

Git команда Manual Pages

git help [command] git [command] --help 
В будущем ожидается, что вы будете приводить и указывать соответствующую информацию, когда будете указывать ссылку. Вы также должны научиться правильно форматировать свои ответы. Ramhound 7 лет назад 0
Похоже, что это только для команд Git. Они не обязательно совпадают с их не-мерзавцами. Например, `git grep` не поддерживает опцию` -R`. https://git-scm.com/docs/git#_git_commands Lorem Ipsum 5 лет назад 0
0
TT--

Если кто-то пытается заставить manработать Windows и использует Msys2, вот что я нашел:

Я очень близко подошел к ответу, приведенному выше, в котором говорится, что нужно установить groff(доступно через pacman), а затем использовать здесь скрипт, в основе которого лежит вызов groff -Tascii -mandoc -P-c.

Но я не мог заставить его работать на моих страницах man (найденных в /usr/share/man), если сначала я не распаковал файлы gz !

Это не было приемлемым решением, поэтому я посмотрел дальше и обнаружил, что, запустив

pacman -Ss -man 

что есть три пакета (в настоящее время), которые имеют префикс "man-". ( смотрите их здесь ).

Я попробовал тот, который называется man-db, он работает, и теперь у меня есть возможность бегать manобычным образом.

Сегодня я могу просто запустить `pacman -S man 'и установить, как ожидается Toby 5 лет назад 0

Похожие вопросы