23 votes

Pages de manuel pour Git Bash sur Windows 7

J'utilise Git bash sous Windows 7. Il me permet d'utiliser la plupart des commandes que j'utilisais sur le Shell de bash sur ma machine Ubuntu. Mais les commandes man et info ne fonctionnent pas. Existe-t-il un moyen de faire fonctionner ces (incroyables) commandes de documentation sur le bash Shell de Git sous Windows ?

9voto

Pianosaurus Points 280

J'ai rassemblé certaines des autres réponses pour obtenir un man que vous pouvez utiliser comme vous le feriez en mode natif. Il suffit de placer les éléments suivants dans votre .bashrc et soit source ou rouvrir votre terminal.

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
}

Il permet également de demander des sections particulières de l'homme, par exemple man 3 printf pour l'appel système.

Faiblesses : La source (man.he.net) n'est pas exactement une API RESTful, et elle renvoie 200 même si rien n'est trouvé, il est donc difficile de donner des messages d'erreur précis. Au lieu de cela, cela affiche simplement "Je n'ai rien trouvé", quel que soit le problème. Cela peut probablement être amélioré. De plus, la page résultante contient des entités html, telles que &lt; au lieu de < ce qui rend certaines chaînes d'utilisation hideuses.

8voto

Chris Points 101

Vous peut get man pages working on Git's bash environment, mais il est probablement plus pratique d'envisager d'autres alternatives qui demandent moins de travail.

Je n'ai pas non plus beaucoup de réputation sur SuperUser, donc je suis triste de dire que je ne peux pas vraiment donner tous les liens dont j'ai besoin dans la réponse. I ré-affiché ma réponse sur Tumblr.

En résumé :

  • Le bash de Git fait partie du projet msysGit.
  • msysGit est un fork du projet MinGW et MSYS
  • Vous aurez besoin de msysGit ou de MinGW pour installer MinGW-get.
  • Vous aurez besoin de MinGW-get pour installer Groff.
  • Vous aurez besoin de Groff pour exécuter ces scripts pour vous donner une commande man à partir du msys bash Shell
  • Avec ces scripts en place, vous pouvez lire les pages de manuel. Il vous suffira de les télécharger sur le chemin que vous avez indiqué dans les scripts.

Bonne chance.

7voto

Lark Points 1640

C'est peut-être un peu exagéré, mais vous pourriez télécharger Cygwin qui comprendrait bash , man et des lecteurs d'information comme pinfo .

L'installateur de cygwin vous permet de personnaliser votre installation pour qu'elle soit un petit sous-ensemble de cygwin.

2voto

mr5 Points 166

En plus de La réponse de Sathya vous pouvez également le faire dans bash pour Windows :

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

Il suffit de remplacer le <command_name> avec la commande que vous recherchez.

Exemple de sortie pour la commande ls :

<PRE> SYNOPSIS ls [OPTION]... [FICHIER]...

DESCRIPTION Lister les informations sur les FICHIERS (le répertoire courant par défaut). Les entrées sont triées par ordre alphabétique si ni -cftuvSUX ni --sort ne sont spécifiés. spécifié.

   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.

Statut de sortie : 0 si OK,

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

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

AUTEUR Écrit par Richard M. Stallman et David MacKenzie.

SIGNALEMENT DES BUGS Signalez les bogues de ls à bug-coreutils@gnu.org Page d'accueil de GNU coreutils : < http://www.gnu.org/software/coreutils/> ; Aide générale à l'utilisation des logiciels GNU : < http://www.gnu.org/gethelp/> ; Signaler les bogues de traduction de ls à < http://translationproject.org/team/> ;

COPYRIGHT Copyright (C) 2011 Free Software Foundation, Inc. Licence GPLv3+ : GNU GPL version 3 ou ultérieure < http://gnu.org/licenses/gpl.html> ;. C'est un logiciel libre : vous êtes libre de le modifier et de le redistribuer. Il n'y a AUCUNE GARANTIE, dans les limites autorisées par la loi.

VOIR AUSSI La documentation complète de ls est maintenue comme un manuel Texinfo. Si les programmes info et ls sont correctement installés sur votre site, la documentation com- mand

          info coreutils 'ls invocation'

   should give you access to the complete manual.

GNU coreutils 8.12.197-032bb Septembre 2011
<STRONG><A href="http://superuser.com/man1/LS">LS(1)</A></STRONG></PRE>

1voto

Sathyajith Bhat Points 60630

Vous pouvez utiliser la documentation en ligne.

Pages de manuel Linux en ligne & Pages d'information GNU

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X