[FUG-BR] criar arquivo vazio

debopen debopen em gmail.com
Sexta Julho 14 14:56:37 BRT 2006


Obrigado

Att.
Carlos


----- Original Message ----- 
From: "Patrick Tracanelli" <eksffa em freebsdbrasil.com.br>
To: ""Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)"" 
<freebsd em fug.com.br>
Sent: Friday, July 14, 2006 1:47 PM
Subject: Re: [FUG-BR] criar arquivo vazio


debopen wrote:
> BOA TARDE A TODOS
>
> Alguem poderia me ajudar nesta duvida
> qual a diferenca destas duas operacoes para criacao
> de um arquivo
>
> touch teste.txt
> : > teste.txt

(eksffa em claire)~> touch a
(eksffa em claire)~> :> b
(eksffa em claire)~> ls -l a b
-rw-r--r--  1 eksffa  freebsdbrasil  0 14 Jul 13:38 a
-rw-r--r--  1 eksffa  freebsdbrasil  0 14 Jul 13:38 b
(eksffa em claire)~> cat a b
(eksffa em claire)~> stat -x a b
   File: "a"
   Size: 0            FileType: Regular File
   Mode: (0644/-rw-r--r--)         Uid: ( 1001/  eksffa)  Gid: (
1001/freebsdbrasil)
Device: 0,103   Inode: 1677558    Links: 1
Access: Fri Jul 14 13:38:45 2006
Modify: Fri Jul 14 13:38:36 2006
Change: Fri Jul 14 13:38:36 2006
   File: "b"
   Size: 0            FileType: Regular File
   Mode: (0644/-rw-r--r--)         Uid: ( 1001/  eksffa)  Gid: (
1001/freebsdbrasil)
Device: 0,103   Inode: 1677975    Links: 1
Access: Fri Jul 14 13:38:45 2006
Modify: Fri Jul 14 13:38:39 2006
Change: Fri Jul 14 13:38:39 2006
(eksffa em claire)~> touch a
(eksffa em claire)~> : > b
(eksffa em claire)~> stat -x a b
   File: "a"
   Size: 0            FileType: Regular File
   Mode: (0644/-rw-r--r--)         Uid: ( 1001/  eksffa)  Gid: (
1001/freebsdbrasil)
Device: 0,103   Inode: 1677558    Links: 1
Access: Fri Jul 14 13:39:20 2006
Modify: Fri Jul 14 13:39:20 2006
Change: Fri Jul 14 13:39:20 2006
   File: "b"
   Size: 0            FileType: Regular File
   Mode: (0644/-rw-r--r--)         Uid: ( 1001/  eksffa)  Gid: (
1001/freebsdbrasil)
Device: 0,103   Inode: 1677975    Links: 1
Access: Fri Jul 14 13:38:45 2006
Modify: Fri Jul 14 13:39:22 2006
Change: Fri Jul 14 13:39:22 2006
(eksffa em claire)~>

Notou a diferenca? Na data de Acesso?

O touch e feito para "tocar" arquivos, modificando sua data de acesso.
Voce pode passar uma data retroativa com o argumento -t. Se o arquivo
nao existe, cria um arquivo vazio com a data passada em -t, ou apenas
"toca" o arquivo existente com essa data. De que outra forma voce
modificaria data de acesso ou modificacao de um arquivo pra 3 anos
atras? Reajustando o horario do FreeBSD? Pra isso serve o touch.

Internamente se ambos arquivos nao existem, a operacao e a mesma, com
touch ou : >. Mas se existirem, o comportamento e outro, especialmente
porque no caso do : > voce nao esta criando um arquivo vazio, voce esta
garantindo que o conteudo do arquivo seja vazio. No caso do exemplo
acima a segunda vez o comando foi usado, o arquivo "b" nao foi criado
vazio, vazio foi o conteudo absoluto dentro do arquivo. Ele ja estava
criado, poucos segundos antes. Cria-lo e um comportamento secundario,
caso o arquivo nao exista. Ja, no caso do touch, se o arquivo ja
existir, tendo ou nao conteudo, apenas a data de acesso ao arquivo sera
modificada.


-- 
Patrick Tracanelli

FreeBSD Brasil LTDA.
(31) 3281-9633 / 3281-3547
316601 em sip.freebsdbrasil.com.br
http://www.freebsdbrasil.com.br
"Long live Hanin Elias, Kim Deal!"

-------------------------
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd 



Mais detalhes sobre a lista de discussão freebsd