Como tocar, rm e tocar no Unix?

Como tocar, rm e tocar no Unix?

Quero esvaziar o arquivo atual, então faço: toco nele, removo e toco porque não quero remover arquivo inexistente; exemplo

           touch "$filenameTarget"
           rm "$filenameTarget"
           touch "$filenameTarget"

Quero ter muito cuidado com exclusões. Qual é a filosofia correta aqui?

SO: Debian 8.5

Responder1

Simplesmente não escreva nada no arquivo:

:> "$filenameTarget"

Isso esvaziará o arquivo se ele já existir e o criará (vazio) se não existir. Você precisa ter as permissões apropriadas (o arquivo deve ser gravável se já existir, o diretório que o contém deve ser gravável se o arquivo ainda não existir).

informação relacionada