web-dev-qa-db-ja.com

Windowsのcmder.exeのunix findコマンド

cmder Windows用のシェルエミュレータをインストールしました。

正常に動作しますが、Unixのfindコマンドを使用できません。どうやら私が入力すると:

'find .'

ターミナルでは、WindowsのFINDを使用してこのエラーを出力しようとします。

FIND: Parameter format not correct

私は本当にfindを使いたいのですが、動作させるためのヒントはありますか?

10
Heisenbug

最も簡単な解決策は、findインストールフォルダー内にcmder実行可能ファイルのエイリアスを作成することです。

λ which find
/c/WINDOWS/system32/find
λ find --help
FIND: FIND: Parameter format not correct
λ alias find=C:\Files\Programs\cmder\vendor\git-for-windows\usr\bin\find.exe $*
λ find --help
Usage: /usr/bin/find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]

Cygwin も試してみることをお勧めします。特に、findはそのまま使用できます。これは、cmderが提供するfind.exeの場所を確認するために使用したものです。

洞察に満ちたコメントについて @ Bob および @ AFH を称賛し、別の完全にシンプルなソリューションを提案するために @LưuVĩnhPhúc を称賛します。

* nix findの名前をfnd.exeのような別の名前に変更します

cmderプロパティでUse legacy consoleが選択されていない限り、cmdエイリアスはWindows 10で機能しないため、これは実際にはエイリアスの作成よりも好ましい場合があります( 方法)を参照 やる)。

11
simlev

Cmder\vendor\git-for-windows\usr\binCmder\vendor\init.batによってPATHに追加されます。残念ながら、それはPATHのendに追加されるため、Windowsのfind.exeが最初に見つかります。

幸い、修正は簡単です。この行をCmder\config\user-profile.cmd内に追加するだけです。

set "PATH=%GIT_INSTALL_ROOT%\usr\bin;%PATH%"

4
Jerem

Windowsにsmartgitをインストールしました

次に、C:\ Program Files(x86)\ SmartGit\git\bin(私のsmartgitフォルダ)をパス環境に追加します

win + rを押してbashに入ります。 bashシェルでは、findコマンドを使用できます。 Cmderでは、bashと入力して使用することもできます

0
lovebanyi