Instalé cmder shell emulator para Windows.
Funciona bien pero no puedo usar el comando find de Unix. Aparentemente cuando escribo:
'find .'
en el terminal intenta usar el FIND de Windows y genera este error:
FIND: Parameter format not correct
Realmente me gustaría usar find, ¿alguna pista sobre cómo hacer que funcione?
windows
command-line
unix
find
terminal-emulator
Heisenbug
fuente
fuente

findaparezca cualquier directorioC:\Windows\System32( antes de que Windows encuentre vidas) en laPATHvariable de entorno. En general, esto no se considera una gran idea para hacer a nivel mundial, ya que tiende a confundir a otros programas que esperan un entorno estándar de Windows. Por el contrario, debería ver si puede configurar un script de inicio en Cmder y hacer que el script haga algo comoset PATH=C:\path\to\folder\with\unix\find;%PATH%cmder, pero en Linux / Unixwhich -a findmostrará todos los programas que podrían ejecutarse con el comando find. Identifica el Unixfind. Luego use su ruta completa, o reorganice el orden de losPATHdirectorios, o establezca un alias, si escmdercompatible con esto; También puede cambiar el nombre de Windowsfind.exeawfind.exe. Si emulabash, puede usar el incorporadotype -a find.sfc /scannowpuede revertirlowhich -a findregresa/c/WINDOWS/system32/find /usr/bin/find. Desafortunadamente, sin embargo, la/usr/bin/findproducción de rendimientosThe system cannot find the path specified.. Parece que aquí se necesita la ruta de estilo de Windows real. La ejecucióntypeinicia las ventanastype, y parececmderque no proporciona la versión similar a Unix.Respuestas:
La solución más simple es crear un alias para el
findejecutable dentro de lacmdercarpeta de instalación:¿Puedo sugerirle que también pruebe Cygwin donde, entre otras cosas,
findfunciona de forma inmediata? Eso es lo que solía determinar la ubicación de loscmdersuministradosfind.exe.Felicitaciones a @Bob y @AFH por sus perspicaces comentarios, y a @ Lưu Vĩnh Phúc por sugerir otra solución simple:
Esto podría ser preferible en lugar de crear un alias, porque los
cmderalias no funcionan en Windows 10 a menos queUse legacy consoleesté seleccionado en lascmdpropiedades (vea cómo hacerlo).fuente
cmdertiene la ventaja obvia de ser portátil y no necesitar la instalación de un usuario privilegiado.finda otro nombre comofnd.exeCmder\vendor\git-for-windows\usr\binse agrega a la RUTA porCmder\vendor\init.bat. Desafortunadamente, se agrega al final de la RUTA, por lo que find.exe de Windows se encuentra primero.Afortunadamente, es fácil de arreglar. Solo agregue esta línea adentro
Cmder\config\user-profile.cmd:set "PATH=%GIT_INSTALL_ROOT%\usr\bin;%PATH%"fuente
He instalado smartgit en windows
Luego agrego C: \ Archivos de programa (x86) \ SmartGit \ git \ bin (mi carpeta smartgit) en el entorno de ruta
presione win + r enter bash. en el shell bash puedes usar el comando find. en Cmder también puedes escribir bash para usarlo
fuente