私はWindows 7でGit bashを使用しています。これは、Ubuntuマシンのbashシェルで使用していたほとんどのコマンドを使用する方法を提供します。しかし、manコマンドとinfoコマンドは機能しません。これらの(信じられないほどの)ドキュメントコマンドをWindowsのGit bashシェルで機能させる方法はありますか?
オンラインドキュメントを使用できます。
あなたはGitのbash環境でmanページを動作させることができますが、作業量の少ない他の代替手段を検討する方がおそらく便利です。
また、SuperUserの担当者も多くないので、応答で必要なすべてのリンクを実際に提供できないと言って悲しいです。 Tumblrで 私の投稿を再投稿 .
要約すれば:
幸運を。
少しやり過ぎかもしれませんが、bash
、man
、および情報リーダーを含む Cygwin をダウンロードできますpinfo
のように。
Cygwinインストーラーを使用すると、インストールをcygwinのかなり小さなサブセットにカスタマイズできます。
他の答えをいくつか組み合わせて、ネイティブのように使用できる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セクションの要求もサポートします。
弱点:ソース(man.he.net)はRESTful APIではなく、何も見つからない場合でも200を返すため、正確なエラーメッセージを表示することは困難です。代わりに、これは問題が何であっても、「Got nothing」と表示するだけです。これはおそらく改善できます。また、結果のページには、<
ではなく<
などのhtmlエンティティが含まれるため、使用方法の文字列が見苦しくなります。
Sathyaの答え に加えて、bash for Windowsでもこれを行うことができます。
curl -v --silent "http://man.he.net/?topic=<command_name>§ion=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 */=>@|) 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<newline>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.
終了ステータス:OKの場合は0、
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によって書かれました。
バグの報告lsバグを[email protected]に報告する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>
.bashrc
の最後に追加します
C:\Users\<Username>\.bashrc
function man() {
VAR1="http://man.he.net/?topic="
VAR2=$1
VAR3="§ion=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
}
他の誰かがman
をWindowsで動作させようとし、Msys2を使用している場合、ここに私が見つけたものがあります:
私は 上記の回答 を使用してgroff
(pacmanから入手可能)を使用し、次に ここにスクリプト を使用することで非常に近くなりました。 _groff -Tascii -mandoc -P-c
_の呼び出し。
しかし、最初にgzファイルを解凍しない限り、(_/usr/share/man
_にある)でマニュアルページを機能させることができませんでした!
これは許容できる解決策ではなかったので、さらに調べてみたところ、
_pacman -Ss -man
_
プレフィックスが「man-」のパッケージが(現在)3つあること。 ( こちらをご覧ください )。
man-dbと呼ばれるものを試してみましたが、正常に機能し、通常どおりにman
を実行できるようになりました。