Copiar um arquivo com a linha de comando do Linux é fácil. No entanto, e se você quiser copiar o mesmo arquivo para vários locais diferentes? Isso é fácil também, e mostraremos como fazer isso com um comando.
Normalmente, para copiar um arquivo, você usaria o comandocp
, vinculando ao arquivo de origem e ao destino. diretório:
cp ~ / Documents / FileToBeCopied.txt ~ / TextFiles /
Para copiá-lo para mais dois diretórios, muitas pessoas simplesmente executariam o comando mais duas vezes, com destinos diferentes:
cp ~ / Documents /FileToBeCopied.txt ~ / Dropbox /
cp ~ / Documents / FileToBeCopied.txt / media / lori / MYUSBDRIVE /
No entanto, podemos fazer a mesma tarefa com um comando:
echo dir1 dir2 dir3 | xargs -n 1 cp file1
Veja como esse comando funciona. O comandoecho
normalmente grava na tela. No entanto, nesse caso, queremos alimentar a saída do comandoecho
como entrada para o comandoxargs
. Para fazer isso, usamos o símbolo de pipe (|
) que alimenta a saída de um comando como entrada para outro. O comandoxargs
executará o comandocp
três vezes, cada vez anexando o próximo caminho de diretório enviado doecho
até o final docp
comando. Há três argumentos sendo passados paraxargs
, mas a opção-n 1
no comandoxargs
diz para anexar apenas um desses argumentos de cada vez para o comandocp
toda vez que é executado.
Então, para ficar com nosso exemplo anterior, os três comandos separadoscp
acima podem ser combinados em um comando como este:
echo ~ / TextFiles / ~ / Dropbox / media / lori / MYUSBDRIVE | xargs -n 1 cp ~ / Documents / FileToBeCopied.txt
Observe que, se o arquivo que está sendo copiado existir em qualquer um dos diretórios de destino especificados, o arquivo nesse destino será substituído automaticamente. Você não será perguntado se deseja substituir o arquivo. (Normalmente, quando você usa o comandocp
para copiar um arquivo em um único local, é possível adicionar a opção-i
para perguntar se deseja substituir um arquivo existente. a opção-i
é uma opção interativa (faz com que o comandocp
solicite informações do usuário) e você não pode usar uma opção interativa com ocp
comando ao usá-lo em conjunto comxargs
.
Outra coisa a considerar, é que se você está copiando um arquivo muito grande, você pode querer adicionar o no-clobber (- n
) para o comandocp
no único comando acima. Esta opção impede automaticamente que um arquivo seja sobrescrito em um destino, se já existir. Se você estiver copiando um arquivo muito grande em uma rede, pode ser lento e você pode evitar o uso dos recursos necessários para copiar e substituir o arquivo. O comando a seguir adiciona a opção-n
e não copia o arquivo para nenhum destino listado nos argumentos da instrução echo, se o arquivo já existir nesse destino.
echo ~ / TextFiles / ~ / Dropbox / media / lori / MYUSBDRIVE | xargs -n 1 cp -n ~ / Documents / FileToBeCopied.txt
Digite man echo, man xargs ou man cp na linha de comando no Linux para obter mais informações sobre qualquer um desses comandos.
Como desativar o Pathlight em um Nest Detect
O sistema Nest Secure vem com dois dispositivos Nest Detect, que são sensores de abertura / fechamento que também podem atuar como detectores de movimento. Eles até têm uma pequena luz LED ativada por movimento (chamada Pathlight) que pode iluminar seu caminho em um corredor escuro. No entanto, se isso não for algo necessário, você poderá desativar o Pathlight no aplicativo Nest.
Como adicionar um calendário suspenso ao macOS Barra de menus Relógio
Os usuários do Windows podem clicar no relógio na barra de tarefas para ver um calendário, o que é perfeito se você precisar saber em que dia da semana 17 de junho é. Os Macs não oferecem esse recurso, pelo menos não prontos para uso. Mas existem programas que podem adicionar um Nossa opção gratuita favorita é um programa chamado Itsycal.