2012-01-24 3 views
0

어떻게 모든 하위 디렉토리에있는 모든 파일을 포함 우분투 터미널에서 파일 경로를 입력합니다 포함되어 있습니까?리눅스는 모든 디렉토리가

"books"라는 기본 디렉토리가 있지만 파일을 포함하는 모든 종류의 하위 디렉토리가있는 경우 모든 하위 디렉토리의 모든 파일을 포함하는 경로는 어떻게 입력합니까?

/books/??? 예를 들어

+3

당신이 정확하게 뭘 하려는지 명확하지 않다. 어떤 문맥에서 –

+0

? 스크립트 언어 또는 명령 줄에서 셸 명령에 대한 입력으로 사용할 수 있습니까? 좀 더 자세한 정보가 유용 할 것입니다 .. –

+0

일반적으로 도구가이를 지원하면 하위 디렉터리를 되풀이하기 위해 도구에 전달할 수있는 플래그가 있습니다. – Skolor

답변

0

실제로 원하는 것이 분명하지 않습니다 ... 아마 y ou는 문제에 대한 더 나은 해결책을 얻을 수 있습니다. 직접 묻는다면 다른 문제가 아니라 원래의 문제를 우회하려고 시도 할 수 있습니다.

당신은 다음과 같은 것을 의미합니까?

file */* 

* 모든 하위 디렉토리에 대한 확장 및 모두를위한 두 번째 * 파일을 포함 어디?

내가 임의로 file 명령을 선택했습니다. 쉘 확장 된 파일에서 실행할 명령을 선택할 수 있습니다. 디렉토리도 포함됩니다 (예 : *.png 또는 *.txt과 같은 이름으로 제외되지 않는 경우). 와일드 카드 * 파일 경로가 모든 하위 디렉토리에있는 모든 파일을 포함 정확히이지만, 예를 들어 목록으로 와일드 카드 식과 일치하는 모든 파일 (또는 디렉토리)로 확장 file1 file2 file3 file4. this tutorial on shell expansion을 참조하십시오. 관련 문제에 대한 쉬운 해결책이있을 수 있음을

참고. 모든 하위 디렉토리 (예 : cp -a)의 모든 파일을 복사하는 것과 마찬가지로 man cp을 참조하십시오.

는 또한 매우 find을 좋아합니다. grep과 결합하여보다 유연한 검색 패턴을 생성하는 것은 매우 쉽습니다.임의의 예를 제공하기 위해 : 책 최상위 디렉토리 내에서

du `find . | grep some_pattern_to_occur | grep -v some_pattern_to_not_occur` 
+0

이전에이 명령을 발견 한 적이 없으므로 공유해 주셔서 감사합니다. 내가 시도 할 때 디렉토리와 파일을보고하고 파일/디렉토리 유형과 관련하여 더 자세한 정보를 제공한다. 예 : 'api : directory' api/pom.xml : XML 문서 텍스트 이 방법을 사용하여 파일을 반복하여 파일 이름 뒤에있는 모든 것을 제거해야하는 파일을 실행해야한다고 생각합니다. 그러면 실행중인 명령에서 디렉토리를 처리 할 수 ​​있어야합니다. 나는'man file'을 빠르게 살펴 봤고 추가 정보를 피할 방법을 보지 못했습니다. –

+1

@BenRose : 나는 작은 예제를 갖기 위해 임의로'file' 명령을 선택했습니다 ... – moooeeeep

+0

오, 당신이 의미하는 것을 봅니다. 후속 조치에 대한 감사 : –

0
./books/* 

, 내가 '책'의 상위 디렉토리에있어 가정 :

ls ./books/* 

편집 : 사실

이 반복적으로 사용해야하는 모든 나무를 나열 :

ls -R ./books/* 
+0

나는 무엇을합니까? – Blainer

+0

목록 디렉터리 내용 – sdarjazi

1

을, 당신은 명령을 사용할 수 있습니다

find . -type f 다음

, 당신은 고양이를 통해 각 파일을 실행 말하고 싶었다 경우 xargs 커맨드 명령을 사용할 수 있습니다

추가 정보를 위해 find . -type f | xargs cat

는 사용 명령 :

man find

man xargs

+1

하위 디렉터리의 계층 구조를 가로 지르는 올바른 방법입니다. 일부 쉘은 와일드 카드 구문'**/*'을 제공하지만 Bash v2는 그러한 것들과는 다릅니다. – tripleee

+0

아직 지원되는 우분투 버전은 터미널에 bash 버전 3 이상을 사용합니다 (알고있는 한). – moooeeeep

관련 문제