Articles

Tutorial de comando de toque Linux para principiantes (6 exemplos)

Posted on

Por vezes, enquanto trabalha na linha de comando no Linux, poderá querer criar um novo ficheiro. Ou, pode haver alturas em que o requisito é alterar os carimbos temporais de um ficheiro. Bem, existe um utilitário que pode ser utilizado em ambos os cenários. A ferramenta em questão é táctil, e neste tutorial, compreenderemos a sua funcionalidade básica através de exemplos fáceis de compreender.

Por favor note que todos os exemplos que iremos utilizar aqui foram testados numa máquina Ubuntu 16.04.

Comando Toque do Linux

O comando táctil é utilizado principalmente para alterar os carimbos temporais de um ficheiro, mas se o ficheiro (cujo nome é passado como argumento) não existe, então a ferramenta cria-o.

Seguir é a sintaxe genérica do comando:

touch ... FILE...

E eis como a página de manual explica este comando:

DESCRIPTION
Update the access and modification times of each FILE to the current
time. A FILE argument that does not exist is created empty, unless -c or -h
is supplied. A FILE argument string of - is handled specially and causes touch to
change the times of the file associated with standard output.

O seguinte Q&Exemplos do tipo dar-lhe-á uma melhor ideia de como a ferramenta funciona.

Como alterar o tempo de acesso/modificação utilizando o comando de toque

Isto é simples, e bastante directo. Tomemos como exemplo um ficheiro existente. A captura de ecrã seguinte mostra os tempos de acesso e modificação de um ficheiro chamado ‘apl.c.’

Aqui está como se pode usar o comando de toque para alterar os tempos de acesso e modificação do ficheiro:

touch apl.c

A captura de ecrã seguinte confirma a alteração destes tempos de acesso e modificação.

Como alterar apenas o tempo de acesso ou de modificação

Por defeito, o comando de toque altera tanto o tempo de acesso como o tempo de modificação do ficheiro de entrada. No entanto, se quiser, pode limitar este comportamento a qualquer um destes timestamps. Isto significa que pode ou ter a hora de acesso alterada ou a hora de modificação.

Caso pretenda alterar apenas a hora de acesso, utilize a opção -a command line.

touch -a 

Simplesmente, se o requisito for alterar apenas a hora de modificação, utilize a opção -m command line.

touch -m 

Como fazer uso do tempo de acesso/modificação por toque de um ficheiro existente

Se quiser, pode também forçar o comando de toque para copiar o tempo de acesso e modificação de um ficheiro de referência. Por exemplo, suponha que queremos alterar os carimbos temporais para o ficheiro ‘apl.c’. Aqui estão os carimbos temporais actuais para este ficheiro:

E este é o ficheiro que pretende utilizar como referência:

Agora, para tocar para utilizar os carimbos temporais de ‘apl.c’ para ‘apl.c’, terá de usar a opção de linha de comando -r da seguinte forma:

touch apl.c -r apl

A imagem acima mostra que a modificação e o acesso aos carimbos temporais para ‘apl.c’ são agora os mesmos que para ‘apl.’

Como criar um novo ficheiro usando touch

Criar um novo ficheiro é também muito fácil. De facto, acontece automaticamente se o nome do ficheiro que se passa como argumento ao comando touch não existir. Por exemplo, para criar um ficheiro chamado ‘newfile’, tudo o que tem de fazer é executar o seguinte comando touch:

touch newfile

Como forçar o toque para não criar nenhum ficheiro novo

Apenas no caso de haver um requisito rigoroso de que o comando touch não deve criar nenhum ficheiro novo, então pode usar a opção -c.

touch -c 

A imagem de ecrã seguinte mostra que, como ‘newfile12’ não existia, e utilizámos a opção de linha de comando -c, o comando de toque não criou o ficheiro.

Como funciona o toque em caso de ligações simbólicas

Por defeito, se passar um nome de ficheiro de ligação simbólica ao comando de toque, a alteração dos carimbos temporais de acesso e modificação será para o ficheiro original (aquele a que a ligação simbólica se refere). Contudo, a ferramenta também oferece uma opção (-h) que lhe permite sobrepor-se a este comportamento.

Aí está como a página de manual explica a opção -h:

-h, --no-dereference
affect each symbolic link instead of any referenced file (useful
only on systems that can change the timestamps of a symlink)

Então, quando quiser alterar a modificação e os carimbos temporais de acesso para a ligação simbólica (e não para o ficheiro original), utilize o comando de toque da seguinte forma:

touch -h 

Conclusion

Como concordaria, o toque não é um comando difícil de compreender e utilizar. Os exemplos/opções que discutimos neste tutorial deverão ser suficientes para que possa começar a utilizar a ferramenta. Enquanto que os novatos se verão na sua maioria a utilizar o utilitário para criar novos ficheiros, os utilizadores mais experientes também jogam com ele para múltiplos outros fins. Para mais informações sobre o comando de toque, dirija-se à sua página man.

Linux tutorial de comando de toque para principiantes (6 exemplos)

Deixe uma resposta

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