Como posso usar o Terminal para copiar todos os arquivos de um determinado tipo de um disco rígido com falha?

3

Eu preciso usar o terminal para copiar minha pasta Imagens de um disco rígido com falha para outra unidade, mas eu não posso realmente mudar para a pasta e usar apenas cp *.jpg ~/Documents. Existe uma maneira de fazer isso sem ter que navegar para o diretório de origem?

Não precisa ser cópia, obviamente, apenas o que quer que possa tirar meus arquivos da unidade.


Editar: Encontrei uma maneira de contornar meu problema atual, então imaginei adicionar. (As respostas abaixo funcionaram em outras pastas, mas não na que eu estava tendo problemas. Acho que nada pode lidar com o pesadelo que é o iPhoto.)

Não consegui ver as subpastas do meu diretório / Pictures / (e não consegui alterar as permissões na pasta, pois o disco está quebrado). Mas, usando terminal e

sudo find /Volumes/Olddisk/Users/me/Pictures/ -type d

Eu peguei para imprimir as subpastas (e provavelmente poderia usar o truque nas respostas nas pastas individuais, eu acho) assim, dentro da bagunça do iPhoto eu encontrei minhas fotos em

/Volumes/Olddisk/Users/me/Pictures//iPhoto Library/Masters/2010

e apenas recorreu a pegar todos os anos com

sudo cp -rpv "/Volumes/Olddisk/Users/me/Pictures//iPhoto Library/Masters/2006" ./
user40627
fonte
Se você encontrou uma solução, você deve publicá-la como uma resposta, em vez de uma edição para sua pergunta original. Isso mantém o site organizado.
Saaru Lindestøkke
Fiz algumas edições pesadas para me concentrar no tópico de "obter dados de um disco rígido com falha", porque essa parece ser a sua principal questão aqui. Sinta-se à vontade para voltar se não gostar.
nohillside
O que me confunde um pouco é o fato de que você não consegue ser capaz de cd no diretório, mas cp /full/path ... funciona ok Você tentou acessar o diretório de origem via Terminal ou via Finder?
nohillside
@patrix a edição fica na parte importante, eu acho, talvez eu deveria ter perguntado a pergunta do terminal específico no superusuário. Eu não tenho acesso a algumas das pastas no disco quebrado e não posso alterar essas permissões (porque não consigo gravar no disco). Usar o localizador nessas pastas apenas trava o localizador instantaneamente, então estou usando o terminal. Eu tenho o material da unidade agora, então comecei a formatá-lo. Eu acho que vou ter que viver com não saber se existe uma versão cp de obter tipos de arquivos específicos de pastas e subpastas.
user40627
@BartArondson Não foi realmente uma solução para a questão que eu coloquei, então eu percebi que não era uma resposta. Mas vou tentar lembrar disso.
user40627

Respostas:

1

eu uso rsync para fazer este tipo de cópia

por exemplo

rsync -aE source_dir/*.jpg target_dir

A opção E copia as ACLs e o anúncio de permissões e tempos do unix recursiona na árvore de diretórios

O rsync também pode ser configurado para copiar para máquinas remotas sem montar unidades.

Existem alguns front ends da GUI para o rsync, por ex. aRsync .

Nota A Apple fornece uma versão antiga que versões do newr podem ser obtidas de gerenciadores de pacotes e veja o página de manual do rsync atual Observe a linha de comando -aE parece ser -AX agora.

Mark
fonte
0

Tente algo como:

find ~/Pictures -iname *.jpg -exec cp {} ~/Documents \;
pietrodn
fonte
-1

cp ~ / Documents / somefolder / *. jpg ~ / Documents / someotherfolder /

Mark Hagers
fonte
também deve funcionar com outros caminhos de disco, por exemplo: cp /Volumes/Olddrive/Users/Me/Pictures/*.jpg. irá copiar todos os jpgs dessa pasta para o diretório atual
Mark Hagers
Sim, isso não funciona ... O disco está quebrado e não pode mostrar / ver as subpastas da pasta / Pictures / que eu quero copiar, e suas sugestões são para uma cópia pasta a pasta (ou eu estou fazendo algum erro muito misterioso, porque tudo que eu obtenho com sua sugestão é "Nenhum tal arquivo ou diretório").
user40627
Lembre-se de cercar os caminhos entre aspas duplas se eles contiverem caracteres de espaço: cp "~/Documents/Some Folder/"*.jpg "~/Documents/Some Other Folder/"
jaume