답변:
사용할 수있는 명령은 다음과 같습니다.
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 d
POSIX 호환 대안의 경우.