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이 아닌 디렉토리보다 앞서 있습니다.
댓글
답변
설치되어 있습니까? “What find”는 무엇을 반환합니까? Windows에는 자체 find가 mia 인 경우 Cygwin이 사용하는 명령 줄 찾기가 내장되어 있습니다.
Answer
Gilles의 대답은 Windows 버전의 find
명령이 cygwin 버전보다 먼저 나오기 때문에 이것이 호출된다는 점에서 정확합니다.
Cygwin을 앞서 가기 그러나 Windows find
명령을 사용하는 모든 배치 파일은 이제 실제로 cygwin find
명령을 호출합니다. 원합니다.
제 생각에 둘 다 작동하는 가장 공생적인 방법은 다음을 수행하는 것입니다.
- cygwin 찾기
find
명령을 실행하고 이름을 변경 / 복사하여lfind.exe
(또는 Windows PATH에 “없는 다른 이름) -
~/.bashrc
파일은alias find=lfind
줄을 추가합니다.
이 방법으로 find
cygwin 터미널에서 t를 사용합니다. cygwin 버전이지만 배치 파일은 Windows 버전을 사용합니다.
참고 : “PATH에 cygwin bin 디렉토리가 여전히 필요하지만 이제 Windows 시스템 디렉토리에서 더 멀리 돌아갈 수 있습니다.
참고 : p>
Answer
Cygwin을 설치할 때 요청하지 않는 한 가능한 모든 패키지를 설치하지 않습니다. 원하는 패키지를 추가하려면 수퍼 유저에 대한 여기 의 설명을 확인하세요.
또는 다음 작업을 수행하세요.
- 설치 시작, 미러 선택, 패키지 화면으로 이동
- 상단의 라디오 버튼 목록에서 “유지”를 선택
- 관련 그룹에서 원하는 패키지
- “계속”선택
답변
다음은 기본 win32 포트 인 GNU-utils입니다 . cygwin을 실행할 필요가 없으며 grep, sed, awk, find, less, cat, tac 등을 포함한 셸 (sh.exe)이 함께 제공됩니다.
Windows 경로는 유지되지만 찾기 이름을 gfind
(gnu-find) 또는 search
로 변경하여 더 쉽게 만들 수 있습니다. 액세스 할 수 있고 coreutils 디렉토리를 PATH에 추가합니다.
find
대신
/usr/bin/find
를 입력합니다./usr/bin
에서 쉘은 $ PATH에있는 첫 번째find
를 사용한다고 생각합니다. 나는 그것을 제거하려고 (어쨌든 ' 어쨌든 필요하지 않았기 때문에) 하려고했지만, 일부 임의의 시스템 스크립트는이find
. 따라서이 문제를 올바른 방법으로 수정하는 것은alias find="/usr/bin/find"
별칭을~/.bashrc
(또는 어떤 쉘이든지 ' 사용 중) .