Como usar o comando Touch no Linux

Como usar o comando Touch no Linux
Laptop preto e prateado com recurso móvel Imagem Touch Command

Quer criar um arquivo rapidamente, mas não quer abrir um editor de texto ou navegar por uma interface gráfica? Não procure mais do que o touchcomando. Este comando é útil para criar arquivos vazios e atualizar timestamps de arquivos, o que é essencial para gerenciar backups e executar scripts de forma eficaz.

Este guia explorará como usar o comando touch no Linux para criar um ou vários arquivos vazios, ou ajustar registros de data e hora para necessidades de script.

Como funciona o comando Touch

Em sistemas UNIX/Linux, o touchcomando é frequentemente usado para criar rapidamente arquivos vazios. Além disso, você pode usá-lo para modificar os timestamps – especificamente os horários de acesso e modificação de arquivos que já existem.

Se o arquivo não existir, touch irá gerá-lo, embora sem nenhum conteúdo. Além disso, sua capacidade de modificar timestamps o torna inestimável em scripts e gerenciamento de sistemas de arquivos.

A sintaxe do comando touch é a seguinte:

Criar um arquivo vazio

Criar um arquivo vazio com o comando touch é muito simples. Basta usar o touchcomando sem nenhuma flag/opção:

Para verificar a criação do arquivo, você pode verificar seu tamanho usando o statcomando:

Verificando o tamanho do arquivo vazio usando o comando stat.

Na saída, procure o campo Size . Se ele mostrar 0, o arquivo está vazio.

Além disso, se o arquivo já existir, o comando touch atualiza seus horários de acesso (atime) e modificação (mtime) para o horário atual sem afetar o conteúdo ou as permissões do arquivo.

Criar vários arquivos vazios

E se você precisar de mais de um arquivo vazio? Com ​​o touch, você pode criar vários arquivos de uma vez. Por exemplo, vamos criar vários arquivos separados por espaços, assim:

Você pode verificar a criação desses vários arquivos vazios executando isto:

Criando e verificando o tamanho de vários arquivos vazios.

Você também pode criar uma série de arquivos com nomes numerados ou com letras usando chaves.

Vamos criar vários arquivos com nomes numerados:

Confirme isso visualizando seus arquivos no diretório especificado.

Visualizando vários arquivos vazios no diretório especificado.

Da mesma forma, você também pode criar arquivos com nomes de letras:

Opções de comando de toque

Como mencionado anteriormente, esse comando touch não serve apenas para criar arquivos – ele também é uma ferramenta para gerenciar timestamps de arquivos. Para manipular esses timestamps, você precisa saber como as opções do comando touch funcionam. Vamos dar uma olhada nelas:

Opção Descrição
-um Atualiza apenas o tempo de acesso ao arquivo.
-c Impede a criação de um novo arquivo se ele ainda não existir.
-d=, –data= Modifica o registro de data e hora de um arquivo usando uma sequência de data especificada.
-m Atualiza apenas a hora de modificação do arquivo.
-r Usa o atime e o mtime de um arquivo de referência.
-t Modifica o registro de data e hora de um arquivo usando uma data e hora especificadas.

Alterando o tempo de acesso do arquivo

O tempo de acesso, ou atime, é o registro de data e hora que é atualizado sempre que o conteúdo de um arquivo é acessado usando ferramentas de linha de comando como grep ou cat, ou editores de texto como vim ou nano.

Por padrão, o touch atualiza os horários de acesso e modificação. No entanto, se você quiser alterar apenas o horário de acesso, pode usar a -aopção com o touchcomando. Isso é particularmente útil para simular o uso de arquivos ou ajustar logs para determinadas operações.

Tempo de acesso do arquivo especificado antes da modificação.

Agora, você pode alterar o tempo de acesso de um arquivo especificado usando touch -ao comando:

Além disso, o comando acima atualizará o tempo de acesso do arquivo especificado para a hora atual sem afetar o mtime.

Vamos verificar a alteração executando:

Visualizando o tempo de acesso do arquivo especificado na janela do terminal após a modificação.

Além disso, você também pode definir um tempo de acesso específico combinando as opções -ae -t. Por exemplo, para alterar o tempo de acesso do arquivo especificado para meia-noite de 1º de junho de 2010:

Aqui, a -aopção altera o tempo de acesso e -tespecifica o tempo no formato [[CC]AA]MMDDhhmm[.ss] .

Novamente, para verificar as alterações, você pode usar este comando:

Atribuindo tempo de acesso específico a um arquivo usando opções de comando de toque.

Alterando o tempo de modificação

O tempo de modificação, ou tempo, é o carimbo de data/hora que muda sempre que o conteúdo de um arquivo é modificado. No entanto, ele não rastreia alterações relacionadas a permissões ou propriedade de arquivo.

Para atualizar apenas a hora da última modificação de um arquivo sem alterar o tempo de acesso, você pode usar a -mopção do comando touch:

Para verificar as alterações, use o statcomando:

Exibindo o horário da modificação após alterá-lo usando a opção -m.

Isso altera o mtime para o momento presente, deixando o tempo de acesso, ou atime, inalterado.

Se você precisar definir um timestamp específico para o horário de modificação, você precisa combinar as -mopções com a -topção. Por exemplo, para definir o horário de modificação para 08:45 AM em 19 de junho de 2014, execute:

Em seguida, verifique o horário de modificação atualizado executando:

Exibindo o tempo de modificação do arquivo usando o comando stat.

Modificar Modificação e Tempo de Acesso

Há casos em que você pode precisar atualizar tanto o atime quanto o mtime simultaneamente. Para fazer isso, use o comando touch independentemente de qualquer opção.

Executar este comando altera tanto o atime quanto o mtime para o horário atual. Use isto quando quiser atualizar os timestamps de um arquivo para refletir interações ou alterações recentes sem alterar o conteúdo do arquivo.

Além disso, você pode usar a opção -aand -mjunto com o touchcomando para modificar os horários de acesso e modificação:

Você pode verificar os horários atualizados executando isto:

Criando arquivo usando o tempo especificado

Às vezes, você pode querer definir o timestamp de um arquivo para uma hora e data específicas em vez do momento atual. A -topção seguida pelo timestamp desejado no formato [[CC]YY]MMDDhhmm[.ss] permite que você faça exatamente isso.

Por exemplo, se você quiser definir os horários de acesso e modificação de um arquivo específico para 1º de janeiro de 2024, às 12h30, será necessário inserir:

Para confirmar a modificação, execute:

Exibindo os valores atime e mtime após modificá-los usando a opção -t do comando touch.

Você também pode usar a -ropção para atualizar o timestamp de um arquivo para corresponder ao de outro arquivo. Por exemplo, vamos alterar o happy.txttimestamp do arquivo com base no new_file.txttimestamp.

Mas antes da modificação, vamos ver o tempo de modificação dos arquivos especificados:

listando todos os arquivos com a hora da modificação.

Depois disso, altere o registro de data e hora de um arquivo para corresponder ao registro de data e hora de outro arquivo:

Verifique a alteração com:

Listando todos os arquivos junto com seus horários de modificação após alterar o registro de data e hora com a opção -r.

Alternativa ao comando Touch

Embora o touch seja minha ferramenta preferida para criação rápida de arquivos e manipulação de timestamp, há outros métodos que você pode usar. Vamos explorar algumas dessas alternativas.

Comando do gato

Você frequentemente usa o comando cat para exibir o conteúdo do arquivo, mas ele também pode criar arquivos. Ao usar cat com um operador de redirecionamento, você pode gerar um arquivo vazio:

Este comando cria filename.txte insere você no modo de entrada. Se você pressionar Ctrl+ D, ele encerra a entrada e deixa o arquivo vazio.

Operador de redirecionamento

Operadores de redirecionamento (>, >>) são outro método para criar arquivos. Usando o >operador, você pode criar um arquivo vazio ou sobrescrever um existente:

Você também pode usar o >>operador, mas ele acrescenta conteúdo a um arquivo existente em vez de criar um novo ou deixá-lo vazio.

Editor de texto

Há muitos editores de texto de linha de comando, como nano, vim ou emacs, que permitem que você crie e edite arquivos. Além disso, você pode usar esses editores de texto para criar um arquivo vazio.

Por exemplo, para criar um arquivo vazio com o Vim, execute:

Ao abrir o Vim, você estará no modo de comando por padrão. Pressione ipara alternar para o modo de inserção, onde você pode digitar ou editar conteúdo.

Após entrar no modo de inserção, pressione Esc para retornar ao modo de comando. Então, digite :wqe pressione Enter para salvar seu trabalho e sair do Vim. E é isso — você criou um arquivo vazio usando o Vim!

Encerrando

O Linux oferece várias maneiras de gerenciar arquivos, mas o utilitário touch se destaca por sua simplicidade e eficácia. Você também pode aprender como executar outras operações no Linux, como concatenar arquivos, encontrar arquivos ou remover arquivos e outros.

Crédito da imagem: Unsplash . Todas as alterações e capturas de tela por Haroon Javed.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *