답변:
사용할 수있는 명령은 다음과 같습니다.
find -type f -or -type d
. I get an error.. : 경로가 expression :`. 앞에 와야합니다. 왜 그런지?
-이전에 누락 or되었습니까?
tl : dr
사용하다 find . -name "*string*" -type f -o -name "*string*" -type d
설명
-o 명령 or은 파일 경로 뒤의 인수를 find . -name "*string*" -type f -o -type d계산 하여 계산합니다 find . (-name "*string*" -type f) -o (-type d). 이러한 이유로 다음을 지정해야합니다.
대부분의 사용자는 다음과 같은 것을 원할 것입니다
find . -name "*string*" -type f -o -name "*string*" -type d
어느 것으로 계산
find . (-name "*string*" -type f) -o (-name "*string*" -type d)
구문 세부 사항 찾기
-name "*string*"문자열이 포함 된 이름을 검색 string합니다.
GNU find를 사용하는 경우 다음 솔루션이 적합 할 수 있습니다.
find -type d,f
자세한 내용은 다음 man find을 참조하십시오.
한 번에 둘 이상의 유형을 검색하려면 쉼표
,(GNU 확장자) 로 구분 된 조합 된 유형 문자 목록을 제공 할 수 있습니다 .
GNU find버전 4.7.0 사용 ,. 지원하지 않는 것 같습니다 . 오류 메시지는find: Arguments to -type should contain only one letter.
find -type f -o -type dPOSIX 호환 대안의 경우.