Mac에서 복사하기 위해 여러 파일을 대기열에 넣는 방법은 무엇입니까?


15

Mac에서 여러 파일을 복사하면 시스템에서 동시에 모든 파일을 복사하려고합니다. 문제는 두 가지입니다.

우선, 여러 파일을 선택하여 복사하면 데이터베이스의 ACID와 달리 "전부 또는 전적으로"접근 방식을 사용하여 하나의 프로세스로 이동합니다. 종종 이것은 바람직하지 않습니다.

또한 다른 복사 프로세스를 추가하면 시스템은 모든 것을 동시에 복사하려고합니다.

예를 들어, 큰 파일 A을 복사하기로 결정한 후 나중에 큰 파일을 복사하기로 결정했습니다 B. "큰 파일"중 하나가 많은 파일을 선택했는지에 관계없이 두 개의 병렬 복사 작업이 수행됩니다.

여러 가지 이유로 이것을 좋아하지 않습니다.

  • 여러 개의 복사 프로세스가 한 번에 실행되면 다른 프로세스가 중단되는 것처럼 보입니다.
  • 또한 여러 파일을 동시에 복사하면 복사 프로세스 자체가 훨씬 느려집니다.
  • 마지막으로 프로세스가 중단되면 파일이 대상에 도달하지 않습니다.
  • 파일을 대기열에 추가하면 한 번에 복사가 시작되고 프로세스가 더욱 중단됩니다.
  • (로컬) 넷의 다른 머신이나 드라이브로 복사 할 때 실제 문제입니다.

결과 : A먼저 전송하고 사용하려는 파일 이 필요한 것보다 도착하는 데 훨씬 오래 걸리고 LAN의 중앙 HD에서 복사 할 때 다른 모든 파일이 도착할 때까지 첫 번째 파일을 사용할 수 없습니다.

따라서 ... Mac에서 복사하기 위해 여러 파일을 대기열에 넣는 방법은 무엇입니까? 명확히하기 위해 : 많은 파일을 선택하거나 하나씩 추가하더라도 큐가 완료 될 때까지 파일을 한 번에 하나씩 만 복사하는 큐에 넣기를 원합니다.

Bash와 특히 Perl의 답변도 환영합니다!


나는 정말로 그 질문을 이해하지 못한다. 한 번에 여러 개의 독립적 인 복사 작업을 시작한 다음 다시 시작하지 않는 것 같습니다. 모든 관련 파일을 동일한 복사 작업의 일부로 복사하려고했습니다 (예 : 모두 선택하고 대상으로 드래그). 또는을 선택한 Cmd-C다음 Cmd-V목적지에서?
Daniel Beck

@Daniel 나는 그 질문을 명확히하려고 노력했다 – 이것은 나 자신도 겪었던 문제이다 : 그것은 독립적 인 복사 작업을 시작하는 것에 관한 것이다. 해결책은 파일을 복사하기 만하면 작업이 순차적으로 처리되는 대기열이됩니다.
slhck

@slhck 마지막으로 프로세스가 중단되면 대상에 도달 한 파일 중 어느 것도 독립적 인 작업에 적용되지 않습니까? 다른 모든 파일이 도착할 때까지 첫 번째 파일을 사용할 수없는 것은 무엇입니까? 평균?
Daniel Beck

1
많은 파일을 선택하고 복사 할 때도 문제가됩니다. 모든 파일은 파일을 대기열에 넣을 수없는 하나의 프로세스를 구성합니다. 이것은 IMHO도 나쁘다. 그럼에도 불구하고 파일을 대기열에 추가하고 싶습니다.
Kebman

실제로는 하나씩 복사됩니다. 복사되는 순서가 본질적으로 무작위라는 것을 의미합니까?
다니엘 벡

답변:


8

울트라 복사기

UltraCopier 는 현재 개발중인 무료 크로스 플랫폼 복사 유틸리티이므로 아직 깔끔하지는 않습니다. 설치 한 후에는 메뉴 표시 줄에 있습니다.

이 대기열에 당신을 수있는 복사 목록 관리 복사 또는 이동 순차적으로 처리하는 작업을. 복사 프로세스 우선 순위와 전송 블록 크기를 정의 할 수도 있습니다.

새 버전을 사용하면 비슷한 소스 및 / 또는 대상으로 그룹화하거나 항상 또는 절대로 그룹화 할 수 없습니다.

여기에 이미지 설명을 입력하십시오


좋은! 사용 중! 완벽하게 작동합니다! 실제로 XCode, Cocoa 및 Objective C는 내 자신의 앱을 작성하는 것을 고려했습니다.
Kebman

4

bash 솔루션은 다음과 같습니다.

cp file1 dest1; cp file2 dest2

복사하려는 파일 수에 대해이 과정을 반복하십시오. 세미콜론과 cp명령을 계속 추가하십시오 .

당신은 또한 할 수 있습니다

cp file1 dest1 && cp file2 dest2

이 예에서는 파일이 복사되기 전의 파일 만 복사됩니다.

폴더의 경우 다음과 같이 할 수 있습니다.

for x in folder/*; do echo "Copying $x"; cp "$x" destdir; done

그러나이 방법으로 전체 폴더를 복사하려고하면 다시 한 번의 프로세스로 처리되므로 바람직하지 않습니다. 또한 폴더의 각 파일을 대기열에 넣고 싶습니다.
Kebman

1
@Kebman : 최근 편집 내용을 참조하십시오.
Wuffers

2
공백이있는 파일과 그 로브 문자를 사용하십시오 for. 안전 find -print0xargs -0위해 파이프로 연결 했을 것입니다 .
slhck

2

Path Finder 6 은 울트라 복사기보다 탐색하기가 쉽고 분명한 신호를 생성하며 더 많은 옵션이 있습니다. 30 일의 평가판도 있습니다.

그러나 나는 이것을 전문적으로 사용하고 있으므로 전적으로 가치가 있다고 말합니다.

Path Finder 6의 파일 작업 (YouTube 비디오)


1
무료 솔루션을 찾고 있었지만 Path Finder는 좋은 앱으로 알려져 있습니다. 사실 Finder가 너무 단순하여 반 고급 작업을 수행하려는 경우 타사 응용 프로그램이 필요하다는 것은 부끄러운 일이라고 생각합니다.
Kebman

2

Finder 대체 경로 찾기 에는 버전 6 이후의 복사 큐 기능이 포함되어 있습니다.

파일 전송 큐

툴바 항목 또는 별도의 통합 창에서 현재 파일 작업에 액세스합니다.


2

이 스레드의 다른 복사 관리자 외에도 ForkLift를 참조하십시오 . http://www.binarynights.com/forklift/

장점 :

  • 큐잉 켜기 / 끄기
  • FTP + SFTP + Amazon S3 + WEBDav,
  • 개발자를위한 편리한 동기화 도구 모음.

단점 :

  • 유료 (작성 당시에는 App Store에 특별 항목이 있지만 ...)
  • App Store 버전에 기능이 없습니다 (오 샌드 박스).

0

이동할 것을 계획하십시오

  • 소스에서 폴더 별명 작성
  • 별명을 대상 폴더로 이동

별명을 찾아서 원점으로 대체하는 스크립트를 작성하십시오 (이동).

스크립트를 시작하고 절전 모드로 전환하십시오.


안녕하세요, superuser.com에 오신 것을 환영합니다. 게시물은 답변보다 토론과 유사합니다. 이 포럼이 토론 포럼이 아니므로 질문에 대답하십시오. 감사합니다! 주제를 더 많이 만들기 위해 답을 편집 할 수도 있습니다.
sleske

계획하고 싶지 않습니다. 파일을 대기열에 넣고 생각없이 하나씩 이동시키고 싶습니다. 이미 스크립트를 사용하고 있다면 별칭을 만드는 것이 불필요합니다. 또한 스크립트 작성 방법을 알고 있다면 이미 작성했을 것입니다. 파일 큐잉 을 지원하는 스크립트의 예가 있습니까?
Kebman

소스 경로와 대상 경로를 "queue.txt"텍스트 파일에 파이프 |와 같이 구분 기호로 구분하여 넣으십시오. / foo / bar / source | / target 행의 예 그런 다음 cat queue.txt | l을 읽는 동안; src = "$ (echo"$ l "| awk -F"| " '{print $ 1}')"; dst = "$ (echo"$ l "| awk -F"| " '{print $ 2}')"; echo "$ src에서 $ dst로 복사"; cp -r "$ src" "$ dst"; 끝난. 그것은 매우 조잡한 예입니다. 나는 당신에게 그런 스크립트에 도박을 권하지 않습니다. 많은 함정이 있습니다. : 당신이 이제까지 시도 어쨌든 경우,이 읽기에 의해 시작 devblog.virtage.com/2013/01/...을
Ramkam

0

나는 같은 문제가 있었고 앱 스토어에서 'CopyQueue'라는 앱을 발견했습니다.

https://itunes.apple.com/gb/app/copyqueue/id711074010?mt=12

잘 작동하는 것 같습니다. 복사하려는 폴더 또는 파일을 대기열로 드래그하면 대기열을 통해 복사가 시작됩니다. 일시 중지하고 대기열 우선 순위를 다시 정렬 할 수 있으며, 내가 가장 좋아하는 기능 중 하나는 확인을 클릭하여 복사가 성공했는지 확인하는 것입니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.