Windows 컴퓨터에서 cygwin을 사용하고 있습니다. 찾기를 시도 중이며 매개 변수 형식이 올바르지 않습니다. 왜 그런 겁니까?
$ ls
bootstrap.jar
catalina-tasks.xml
catalina.bat
catalina.sh
commons-daemon-native.tar.gz
commons-daemon.jar
cpappend.bat
digest.bat
digest.sh
setclasspath.bat
setclasspath.sh
shutdown.bat
shutdown.sh
startup.bat
startup.sh
tomcat-juli.jar
tomcat-native.tar.gz
tool-wrapper.bat
tool-wrapper.sh
version.bat
version.sh
$ find . -name "version.sh"
FIND: Parameter format not correct
- cygwin을 설치하는 동안 아무것도 설치해야합니까, 아니면 뭔가 잘못하고 있습니까?
답변
당신 PATH
은 나쁩니다. Cygwin 디렉토리 앞에 Windows 시스템 디렉토리가 있거나 Cygwin 디렉토리가 전혀 없습니다. 이 메시지는 Windows 명령에서 온 것입니다 find
( FIND
대문자 로 이름을 알려주 는 힌트 임).
Cygwin 셸을 시작할 때 일반적으로을 설정해야합니다 PATH
. 로그인 셸을 시작하는 것이 좋습니다 (올바로 기억하면 기본 Cygwin 시스템 메뉴 항목이 수행함). 귀하의 Cygwin에서이 PATH
있어야한다 /usr/local/bin
, /usr/bin
그리고 /bin
비 Cygwin에서 디렉토리의 (적어도) 앞.
답변
찾기가 설치되어 있습니까? “찾은 것”은 무엇을 반환합니까? Windows에는 자체 명령이 미아 일 경우 Cygwin이 결국 사용한다는 명령 줄 찾기 기능이 내장되어 있습니다.
답변
Gilles의 대답은 Windows 버전의 find
명령이 cygwin 버전보다 먼저 나오기 때문에 정확합니다 .
그러나 Cygwin을 앞당기는 것은 windows find
명령 을 사용하는 모든 배치 파일이 실제로 cygwin find
명령을 호출 한다는 것을 의미합니다 .
제 생각에 두 가지가 작동하는 가장 공생적인 방법은 다음을 수행하는 것입니다.
- cygwin
find
명령을 찾아서 이름을 바꾸거나 복사하십시오
lfind.exe
(또는 Windows PATH에없는 다른 이름). - 당신의
~/.bashrc
파일 줄을 추가alias find=lfind
이런 식으로 find
cygwin 터미널에서 실행할 때는 cygwin 버전을 사용하지만 배치 파일은 Windows 버전을 사용합니다.
참고 : 여전히 PATH에 cygwin bin 디렉토리가 필요하지만 이제 Windows 시스템 디렉토리에서 다시 돌아올 수 있습니다.
답변
Cygwin을 설치할 때 요청하지 않으면 가능한 모든 패키지가 설치되지 않습니다. 원하는 패키지를 추가하려면 설명을 살펴보십시오.
여기 에서 슈퍼 유저에 보십시오 .
또는 다음 조치를 수행하십시오.
- 설정을 시작하고 미러를 선택한 다음 패키지 화면으로 이동하십시오.
- 상단의 라디오 버튼 목록에서 “유지”를 선택하십시오
- 관련 그룹에서 원하는 패키지를 선택하십시오
- “계속”을 선택하십시오
답변
네이티브 win32 포트로서의 GNU 유틸리티는 다음과 같습니다. . cygwin을 실행할 필요가 없으며 grep, sed, awk, find, less, cat, tac 등을 포함한 쉘 (sh.exe)이 제공됩니다.
Windows 경로의 문제점은 지속되지만 찾기의 이름을 gfind
(gnu-find) 또는로 search
바꾸어보다 쉽게 액세스 할 수 있도록하고 coreutils 디렉토리를 PATH에 추가하십시오.