Gostaria de saber como mover todos os arquivos de uma pasta para outra pasta com uma linha de comando.
Digamos que eu esteja na minha pasta Downloads e há 100 arquivos que eu gostaria de mover para a minha pasta Vídeos, sem precisar escrever o nome de todos os arquivos.
command-line
Michael
fonte
fonte
files
mas as pessoas mostram como se mover não apenasfiles
masfolders
também. Tudo bem?Respostas:
Abra um terminal e execute este comando:
Ele moverá todos os arquivos e pastas da pasta Downloads para a pasta Vídeos.
Para mover todos os arquivos, mas não as pastas:
Se você estiver interessado em mover todos os arquivos (mas não as pastas) da pasta Downloads para a pasta Vídeos, use este comando
Para mover apenas arquivos das pastas de Download, mas não das subpastas:
Se você deseja mover todos os arquivos da pasta Downloads, mas não arquivos dentro das pastas da pasta Download, use este comando:
aqui, a
-maxdepth
opção especifica o quão profundo o find deve tentar,1
significa apenas o diretório especificado no comando find. Você pode tentar usar2
,3
também para testar.Veja a página de manual do Ubuntu para uma explicação detalhada
fonte
-print0 | xargs -0 mv -t ~/Videos
pode ser mais eficientemente feito com-exec mv -t ~/Videos \{\} \+
:-)mv -v ~/Downloads/* ~/Videos/
não funciona para arquivos ocultosEle moverá todos os arquivos, incluindo subpastas no diretório que você deseja
mv
. Se você desejacp
(copiar) ourm
(remover), precisará da-r
opção (recursiva) para incluir subpastas.fonte
mv
não precisa da opção recursiva para incluir subpastas. Pode-se usá-lo também para renomear.Para o caso simples:
Se você deseja mover arquivos ponto (oculto) também, defina a opção shell do dotglob .
Isso deixa o conjunto de opções do shell.
Para usar o dotglob uma vez, execute os comandos em um subshell:
fonte
(shopt -s dotglob; mv ~/Downloads/* ~/Videos)
única move (cortes) o conteúdo (incluindo os arquivos ocultos). Nesse caso, as pastas de origem e destino já devem existir. No final, o diretório de origem fica vazio.É possível usando
rsync
, por exemplo:Onde:
Se você tiver privilégios de root, prefixe com
sudo
para substituir possíveis problemas de permissão.fonte
Usar
Eu espero que isso ajude. Porque tive a mesma dor e perdi muito tempo consertando meu erro.
fonte
Para mover um diretório com ou sem conteúdo para seu novo nome, da mesma maneira que você usaria o
mv
comando para renomear um arquivo:mv -T dir1 dir2
Onde:
-T
trata o destino como um arquivo normaldir1
é o nome original do diretóriodir2
é o novo nome do diretórioNB:
dir2
não precisa existir.Espero que isso economize muito tempo para alguém, como noob, antes disso, eu criaria um diretório com o novo nome e depois moveria o conteúdo do diretório para o diretório criado anteriormente.
Use para subdiretórios
Este comando é útil quando muitos arquivos foram salvos em uma subpasta do diretório de destino, ou seja
Downloads/mp4
. Neste exemplo, a execuçãomv -T Downloads/mp4 Videos
resultará na remoção damp4
subpasta e todos os arquivos contidos nela serão movidos para a pasta Vídeos.fonte
dir1
seja removido. Além dessa precaução, esta resposta notou algo de bom para o uso diário.mv fileA fileB
mas a-T
bandeira nesse caso trata o diretório de destino / como um arquivo e o renomeia.cd folderNamehere
pwd
. Isso também imprimirá o diretório que você deseja movê-lo.cd folderNamehere
mv *.* typeAnswerFromStep2here
Isso moverá todos os arquivos desse diretório para o outro.
fonte
foo.txt
,bar.
ebar
tantobar.
ebar
não será movida. Usar em*
vez de*.*
cuida disso. Mas nos dois casos, arquivos ocultos como:.foobar
não serão movidos.aqui você tem que apresentar barra e
*
após o caminho de origem para que ele leve os arquivos para dentro do caminho_de_origem, em vez do diretório de origem completo.Exemplo:
mv /home/username/test/* /home/username/test2/
O comando acima move todos os arquivos (a menos que estejam ocultos) no diretório de origem para o diretório de destino.
fonte
tente
-type com o argumento -type, você pode especificar o tipo file.on nesta instrução que é o arquivo médio.se usar of -d que significa diretório.
-iname: o método mais comum e óbvio para procurar um arquivo é usar o argumento -name.se você não tiver certeza sobre a distinção entre maiúsculas e minúsculas, pode usar o argumento -iname
mv {} e, finalmente, para especificar o diretório de destino e, em seguida, mover os arquivos para lá usando o argumento mv {}
fonte