2014-04-14 2 views
1

나는 unix 명령 사용법에 초보자입니다. 여러 디렉토리의 여러 파일을 새 디렉토리로 복사하는 방법이 있는지 물어보고 싶습니다. 예 :다른 디렉토리에서 하나의 새 디렉토리로 여러 파일을 복사하는 unix 명령

in /tmp/dirA --> it contains file A.run.log and A.skip.log 
in /tmp/dirB--> it contains file B.run.log and B.skip.log 
in /tmp/dirC --> it contains file C.run.log and C.skip.log 

하고 싶습니다이 /tmp/dirNew

라는 새 폴더에 모든

A.run.log 
A.skip.log 
B.run.log 
B.skip.log 
C.run.log 
C.skip.log 

을 가지고 그것을 할 수있는 유닉스 명령이 있나요? 정말 감사합니다. 고맙습니다.

JS

+1

당신은'cp','mv','find'을 탐험 할 수 있습니다. globbing에 대한 지식이 도움이 될 수도 있습니다. – devnull

답변

0

사용이 :

cp /tmp/dir?/* /tmp/dirNew 
+0

'cp' cmd 앞에'mkdir/tmp/dirNew'가 필요합니다. 모두에게 행운을 빕니다. – shellter

0
find /tmp -path "/tmp/dirNew" -prune -o -name '*.run.log' -exec cp {} /tmp/dirNew/ \; 
find /tmp -path "/tmp/dirNew" -prune -o -name '*.skip.log' -exec cp {} /tmp/dirNew/ \; 
+0

감사합니다. 소스 디렉토리 패턴이 다른 경우 위의 명령을 어떻게 바꿀 수 있습니까?/tmp/dirA 및/tmp/abc/dirB 및/tmp/efg/xyz/dirC와 같이 복사 할 파일은 여전히 ​​A.run.log, B.run.log, C.run.log, A.입니다. skip.log, B.skip.log, C.skip.log. – user3531570

+0

@ user3531570에서 찾기 맨 페이지를 살펴보고'path' 옵션을 실험 해보십시오. 요구 사항을 명확하게 정의하면보다 적합한 명령을 줄 수 있습니다. – perreal

+0

예를 들어, 세 가지 다른 작업 영역에 3 명의 사용자가있는 경우 (사용자가 직접 디렉토리를 만들 수있는 경우), 자세한 내용은 perreal입니다. 사용자 A ==> /commonarea/dirA/ownerA/A.run.skip .log, 사용자 B ==> /commonarea/dirB/xtradirB/ownerB/B.run.skip.log, 사용자 C ==> /commonarea/C_own_dir/C.run.skip.log; 사용자 D (사용자 D)가 A.run.skip.log + B.run.skip.log + C.run.skip.log를 복사하려는 경우 사용자 D가 해당 항목을 찾는 방법 * run.skip .log 파일을 사용자 A, B, C가 다른 디렉토리에있는 경우 (첫 번째 디렉토리 만 공통 영역 디렉토리입니다)? – user3531570

관련 문제