Como Usar o Comando Touch do Linux (Com Exemplos)

O Comando Touch do Linux é usado principalmente para criar arquivos vazios, além de alterar o registro de data e hora (timestamp) de arquivos ou pastas. A informação destes registros de arquivos consistem em três atributos: hora do acesso, hora da modificação e hora da alteração.

Este tutorial vai explicar mais sobre o Comando Touch do Linux, suas opções e usos. Junto a isso, teremos exemplos práticos de como usá-lo com propriedade.

O Que é um Timestamp no Linux

No Linux, cada arquivo ou pasta tem um timestamp (registro de hora e de data) associado consigo. Ele fornece informação sobre quanto um conteúdo de um arquivo ou seus atributos foram modificados. Existem três tipos de timestamps:

  • Access time (atime). É o momento da última vez em que o arquivo foi acessado ou lido.
  • Modification time (mtime). É o momento da última vez em que o conteúdo de um arquivo foi modificado. Assim como o access time, faz parte também do status de metadados do arquivo.
  • Changed time (ctime). É o momento da última vez em que um arquivo foi alterado (por exemplo, as suas permissões).

Como o atime e o mtime fazem parte do status de metadados de um arquivo, o ctime ou o mtime de um arquivo resulta em ctime, que automaticamente define a hora atual da alteração.  

Não existe forma de definir ou alterar o ctime manualmente. O Comando Touch do Linux é usado principalmente para manipular o momento (a hora) de acesso e de modificação de arquivos usando várias opções. Você confere algumas delas abaixo.

Lembre-se: antes de usar o Comando Touch, você precisa acessar seu serviço de VPS pelo SSH.

Sintaxe do Comando Touch do Linux

A sintaxe do Comando Touch do Linux é:

touch [options] [file_name]

E, a seguir, você confere alguns exemplos de Comandos Touch do Linux para usar em situações específicas.

Criar Um Arquivo Usando Touch

O Comando Touch sem qualquer opção cria sempre um novo arquivo. Se o arquivo já existe, o Comando Touch vai atualizar o acesso a modificação da hora atual sem mudar seu conteúdo. Use:

touch file_name.txt

Criar Múltiplos Arquivos Usando Touch

Também é possível criar múltiplos arquivos usando um único Comando Touch. Para tanto, você precisa especificar os nomes dos arquivos com espaços entre eles. Na linha de comando, seria algo como isso:

touch file_name1.txt file_name2.txt file_name3.txt

Você pode gerar nomes automaticamente usando o símbolo de chaves enquanto cria múltiplos arquivos. Veja o exemplo abaixo:

touch file_name{1..3}.txt

O Comando Touch acima vai criar três arquivos chamados file_name1.txt, file_name2.txt e file_name3.txt.  

Alterar Hora de Acesso Usando Touch

Para mudar a hora de acesso de um arquivo para a hora atual, use a opção -a seguida pelo nome do arquivo com o Comando Touch. Veja o exemplo abaixo:

touch -a file_name.txt

Alterar Hora da Modificação Usando Touch

A opção -m junto com o Comando Touch muda a hora de modificação de um arquivo para a hora atual. A linha de comando é esta:

touch -m file_name1.txt

Alterar Hora de Acesso e da Modificação Usando Touch

Para alterar tanto a hora de acesso quanto a de modificação com um único comando, use as opções -a e -m juntas:

touch -am file_name1.txt

Alterar Hora de Acesso sem Criar um Novo Arquivo

Em algumas situações, pode ser que você queira alterar a hora de acesso e de modificação de um arquivo que já existe para a hora atual sem precisar criar um novo arquivo.

Para fazer isso, você pode usar a opção -c seguida pelo nome do arquivo com o Comando Touch.

touch -c file_name.txt

Definir Hora Específica de Acesso e Modificação Usando Touch

Também é possível definir a hora de acesso e de modificação de um arquivo para uma data em particular usando a opção -t seguida pela hora específica. Algo como:

touch -t 201903081047.30 file_name.txt

O formato da hora específica é definido pelo padrão CCYYMMDDhhmm.ss, em que:

  • CC – Os dois primeiros dígitos do ano.
  • YY – Os dois dígitos subsequentes do ano.
  • MM – O mês do ano [01-12].
  • DD – O dia do mês [01-31].
  • hh – A hora do dia [ 00-23].
  • mm – O minuto da hora [00-59].
  • ss – O segundo do minuto [00-59].

Alterar o Timestamp de um Arquivo Linkado Simbolicamente

Quando você usa um nome de arquivo simbolicamente linkado com o Comando Touch do Linux, a informação do timestamp para o arquivo original que está apontado para o link fica alterada.

Para alterar a hora de acesso e de modificação para a hora atual de um arquivo linkado simbolicamente, use a opção -h.

touch -h symbolic_link_file

Especificar o Timestamp Usando Outro Arquivo como Referência

O Comando Touch do Linux também pode definir a hora de acesso e de modificação de um arquivo através de um arquivo de referência.

Por exemplo, o Comando Touch a seguir com a opção -r vai escanear a informação do registro de hora do reference.txt e definir esses mesmos valores do timestamp para file_name.txt.

Aqui está um exemplo do comando:

touch -r reference.txt file_name.txt

Especificar Data e Hora como um Conjunto Usando Touch

Você pode especificar a data e a hora como um conjunto (string) usando a opção -d. A linha de comando a seguir mostra um exemplo que define a data para 8 de março e a hora é automaticamente definida para 00:00.

touch -d '8 Mar' file_name.txt

Mas, em vez de especificar a data como um conjunto, você pode especificar a hora também como um conjunto. Nesse caso, a data vai ser automaticamente definida com a data atual.

touch -d '20:10' file_name.txt

Dica

Se você precisar de um upgrade na sua hospedagem, use uma VPS da Hostinger para mais recursos, mais desempenho e estabilidade nos eu projeto. Aproveite até 67% OFF!

Conclusão

Este tutorial mostrou os usos do Comando Touch do Linux, incluindo alguns dos exemplos práticos de opções específicas. Qualquer dificuldade que você tiver pode ser solucionada com pesquisa no próprio manual do comando na página dele no terminal!

Author
O autor

Andrei L.

Jornalista e conteudista SEO/Localização na Hostinger Brasil. Tem experiência em WordPress e na produção de conteúdos de tecnologia otimizados para conquistar as melhores posições no Google. É fã de games, adora vôlei, ama o inverno e está sempre buscando se aperfeiçoar no Inglês.