파일을 여러 폴더에 복사하지만 AST로 실행하는 경우에만 해당됩니다.

파일을 여러 폴더에 복사하지만 AST로 실행하는 경우에만 해당됩니다.

포스터를 게시하는 것은 이번이 처음이며 코딩도 처음입니다.

수백 개의 폴더에 파일을 복사해야 해서 ING_30.tif터미널 명령을 사용하여 이 작업을 빠르게 수행하려고 합니다.

  • 둘 다 ING_30.tif동일한 상위 폴더와 복사해야 하는 폴더에 있습니다 ING/.
  • 의 모든 폴더에 복사하고 싶지 않고 (예를 들어)로 시작하는 폴더 ING_30.tif에만 복사하고 싶습니다.ING/ING/ASTAST_1113054
  • AST*폴더에는 삭제하고 싶지 않은 다른 파일이 이미 있습니다.

어떤 도움이라도 대단히 감사하겠습니다. 파일을 여러 폴더에 복사하는 게시물을 온라인에서 찾았지만 AST*폴더에만 복사하도록 지정할 수 있는 코드가 없습니다. 또한 일부 명령은 파일을 복사하지만 폴더에 이미 있는 파일을 삭제하는 것을 보았습니다. 이는 피해야 할 것입니다. 감사해요!

답변1

또 다른 옵션:

for d in AST*/; do cp ING_30.tif "$d"; done

/이는 glob 패턴(후행으로 적용)과 일치하는 모든 디렉터리를 반복 AST*하고 거기에 파일을 복사합니다.

xargs디렉터리 이름에 공백이나 기타 흥미로운 문자가 포함될 수 있는 경우 다음을 사용하는 것보다 안전합니다(답변 참조).이 문제더 많은 통찰력을 얻으려면) 해당 옵션을 허용하는 GNU 버전이 없고 -0디렉터리 이름을 NULL로 끝나는 문자열로 에 제공하는 방법도 있습니다 xargs.

답변2

해결책을 찾았습니다.

echo AST* | xargs -n 1 cp ING_30.tif

폴더의 다른 파일을 삭제하지 않고 내 .tif파일을 모든 폴더에 복사합니다 .AST_

관련 정보