Pesquisa de site

Copie arquivos e altere a propriedade e as permissões ao mesmo tempo


Este breve tutorial descreve como copiar arquivos e alterar a propriedade e as permissões ao mesmo tempo na linha de comando em sistemas operacionais do tipo Unix.

Normalmente, usamos o comando “cp” para copiar arquivos de um local para outro. Em seguida, usamos os comandos “chmod” e “chown” para alterar as permissões e a propriedade de um arquivo, respectivamente.

No entanto, podemos combinar todas essas tarefas em umcomando de uma linha e ainda obter o mesmo resultado em vez de executar os três comandos consecutivos. Isso pode ser útil quando você quiser fazer isso regularmente ou dentro de um script.

Copie arquivos e altere a propriedade e as permissões ao mesmo tempo

Dê uma olhada no exemplo a seguir.

Para copiar arquivos e alterar permissões e propriedade, normalmente fazemos:

cp /dir1/file1 /dir2
chmod 775 -R /dir2
chown -R newowner:newgroup /dir2/file1

No entanto, você não precisa usar três comandos para esta tarefa simples. Podemos fazer isso com um único comando. É aqui que o comando "instalar" se torna útil.

Achei que o comando "instalar" se destinava a instalar coisas. Mas eu estava errado! O comando "instalar" é usado para copiar arquivos para o destino de sua escolha e definir atributos. Faz parte do GNU coreutils que vem pré-instalado em todas as distribuições Linux.

Agora, deixe-me mostrar como alterar as permissões e a propriedade de um arquivo durante a cópia.

sudo install -C -m 775 -o sk -g ostechnix /dir1/file1 /dir2

O comando acima copiará o arquivo /dir1/file1 para /dir2, alterará as permissões do arquivo para 775, o proprietário para sk, e o grupo para ostechnix.

Vamos analisar o comando acima e ver o que cada parte do comando faz.

  • -C, (--compare): Compare cada par de arquivos de origem e destino e, em alguns casos, não modifique o destino.
  • -m, (--mode): Define o modo de permissão (como em chmod).
  • -o, (--owner): Define a propriedade do usuário.
  • -g, (--group): Define a propriedade do grupo.

Para obter mais detalhes, consulte as páginas de manual.

man install

Leitura sugerida:

  • Como manter intactas a propriedade e as permissões de arquivo ao copiar arquivos ou diretórios
  • ExplainShell – Descubra o que cada parte de um comando Linux faz

E isso é tudo. Espero que isto ajude.

Artigos relacionados