Windows 7의 Git Bash 매뉴얼 페이지


20

Windows 7에서 Git bash를 사용하고 있습니다. Ubuntu 컴퓨터의 bash 쉘에서 사용했던 대부분의 명령을 사용할 수있는 방법을 제공합니다. 그러나 man 및 info 명령은 작동하지 않습니다. Windows의 Git bash 쉘에서 이러한 (믿을 수없는) 문서 명령을 작동시키는 방법이 있습니까?

답변:


2

온라인 설명서를 사용할 수 있습니다.

Linux 매뉴얼 페이지 온라인GNU 정보 페이지


명령 줄에서이 웹 페이지에 연결하여 결과를 표시하는 프로그램이 있습니까? 여전히 쉘에 info grep을 입력하고 결과를 얻을 수 있도록?
Prasanth

1
@Prasanth 아마도 wget <URL>을 수행하고 grep 할 수 있습니다.
Sathyajith Bhat

또는 그는 이것을 할 수있었습니다 curl "http://man.he.net/?topic=<command_name>&section=all". <command_name>찾고있는 명령으로 대체
mr5

OP의 질문에 대답하지 않습니다. 그는이 명령들이 쉘에서 작동하기를 원합니다.
Pete Alvin

7

그것은 약간의 잔인한 수 있지만 다운로드 할 수 Cygwin에서 포함 것이다 bash, man같은, 그리고 정보의 독자 pinfo.

cygwin 설치 프로그램을 사용하면 설치를 cygwin의 아주 작은 서브 세트로 사용자 정의 할 수 있습니다.


2
사소한 일이 아닙니다. 누군가가 Windows에서 Unixy 경험을 원하고 Git Bash를 실수로 설치하여 그것을 얻는 방법이라고 생각하는 것이 일반적입니다. 한편 Cygwin은 실제로 가능한 최대 또는 거의 정도로 하나를 제공합니다.
Aaron Miller

6

Git의 bash 환경에서 매뉴얼 페이지를 작업 있지만 작업량이 적은 다른 대안을 고려하는 것이 더 편리합니다.

또한 SuperUser에 대한 담당자가 많지 않으므로 응답에 필요한 모든 링크를 실제로 제공 할 수는 없다고 유감입니다. 나는 Tumblr 에 내 응답다시 게시 했습니다.

요약해서 말하자면:

  • Git의 bash는 msysGit 프로젝트의 일부입니다.
  • msysGit은 MinGW 및 MSYS 프로젝트의 포크입니다.
  • MinGW-get을 설치하려면 msysGit 또는 MinGW가 필요합니다
  • Groff를 설치하려면 MinGW가 필요합니다.
  • msys bash 쉘 내에서 man 명령을 제공하려면 이러한 스크립트 를 실행하려면 Groff가 필요합니다.
  • 이러한 스크립트를 사용하면 매뉴얼 페이지를 읽을 수 있습니다. 스크립트에 표시된 경로로 다운로드하면됩니다.

행운을 빕니다.


2
로 man을 설치할 수 있습니다 MinGW-get install msys-man. Man은 Windows 바이너리 ( sourceforge.net/projects/ezwinports/files )로도 제공됩니다 (FAQ : mingw.org/wiki/FAQ#toc10 참조 ). 그 페이지에는 groff도 있습니다. 아마도 그 스크립트보다 더 빠르게 실행될 것입니다.
Sam Hasler

@SamHasler msys-man은 훌륭합니다. 팁 주셔서 감사합니다, 나는 그것을 어떻게 그리웠는지 모르겠습니다.
Dave

5

나는 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 3 printf 시스템 호출과 .

약점 : 소스 (man.he.net)는 정확히 RESTful API가 아니며 아무것도 발견되지 않은 경우에도 200을 반환하므로 정확한 오류 메시지를 제공하기가 어렵습니다. 대신, 이것은 문제가 무엇이든 "Got nothing"을 인쇄합니다. 이것은 아마도 향상 될 수 있습니다. 또한, 결과 페이지는 다음과 같은 HTML 엔티티가 포함되어 &lt;대신을 <일부 사용 문자열이 추한 만든다.


가장 좋은 답변입니다. 감사합니다! 효과가있다.
Pete Alvin

2

Sathya의 답변 외에도 Windows 용 bash 에서이 작업을 수행 할 수 있습니다.

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

<command_name>찾고있는 명령으로 바꾸십시오 .

명령 출력 예 ls:

<PRE> 시놉시스 ls [OPTION] ... [FILE] ...

DESCRIPTION 파일에 대한 정보를 나열합니다 (기본적으로 현재 디렉토리). -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이면 OK,

   1      if minor problems (e.g., cannot access subdirectory),

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

저자 Richard M. Stallman과 David MacKenzie가 작성했습니다.

버그보고 버그 버그를 bug-coreutils@gnu.org로보고 GNU coreutils 홈 페이지 : < http://www.gnu.org/software/coreutils/> ; GNU 소프트웨어 사용에 대한 일반적인 도움말 : < http://www.gnu.org/gethelp/> ; ls 번역 버그를 < 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 년 9 월
<STRONG> <A HREF="/man1/LS"> LS (1) </A> </ STRONG> </ PRE>


1

대답은 ,이에서 질문 , 도움이 될 수 있습니다 :

bash 창에서 바로 명령에 대한 정보를 제공합니다.

힘내 명령 빠른 참조

git [command] -help

브라우저에서 명령에 대한 온라인 정보를 엽니 다.

힘내 명령 매뉴얼 페이지

git help [command]
git [command] --help

앞으로는 링크를 제공 할 때 관련 정보를 인용하고 인용 할 것으로 예상됩니다. 답변의 형식을 올바르게 지정하는 방법도 배워야합니다.
Ramhound

이것은 Git 명령에만 해당됩니다. 이것들은 반드시 git이 아닌 상대방과 같을 필요는 없습니다. 예를 들어 옵션을 git grep지원하지 않습니다 -R. git-scm.com/docs/git#_git_commands
Lorem Ipsum

0

다른 사람이 manWindows에서 작업 하려고하고 Msys2를 사용 하는 경우 여기에 내가 찾은 것이 있습니다.

나는 아주 가까이 사용하여 가지고 위의 답변을 설치 밝히는을 groff(팩맨을 통해 사용 가능) 한 후 사용 여기에 스크립트 의 핵심에 대한 호출에있다, groff -Tascii -mandoc -P-c.

그러나 먼저 gz 파일의 압축을 풀지 않으면 맨 페이지 (에서 찾을 수 있음 /usr/share/man) 에서 작동하지 못했습니다 !

이것은 받아 들일만한 해결책이 아니므로 더 자세히 살펴보고

pacman -Ss -man

접두사가 "man-"인 현재 세 개의 패키지가 있습니다. ( 여기에서 참조하십시오) ).

나는 man-db 라는 것을 시도했지만 작동하며 이제는 man정기적으로 예상되는 방식 으로 실행할 수 있습니다.


오늘 pacman -S man은 예상대로 간단하게 실행 하고 설치할 수 있습니다
Toby

0

끝에 추가 .bashrc

C:\Users\<Username>\.bashrc

function man() {
    VAR1="http://man.he.net/?topic="
    VAR2=$1
    VAR3="&section=all"
    VAR4="$VAR1$VAR2$VAR3"
    curl -v --silent "$VAR4" 2>&1 | sed -n "/<PRE>/,/<\/PRE>/p"
}

끝에 추가 .bash_profile

C:\Users\<Username>\.bash_profile

# Read .bashrc
source ~/.bashrc

터미널을 다시 시작하십시오.

man find에 대한 매뉴얼 페이지를 반환합니다 find.


여기에 짧은 답변을위한 버전이 있습니다 :

function man-short() {
    $1 --help
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.