Wie funktioniert touch, rm und touch unter Unix?

Wie funktioniert touch, rm und touch unter Unix?

Ich möchte die aktuelle Datei leeren, also mache ich Folgendes: berühren, entfernen und berühren, weil ich eine nicht vorhandene Datei nicht entfernen möchte; Beispiel

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

Ich möchte beim Löschen sehr vorsichtig sein. Was ist hier die richtige Philosophie?

Betriebssystem: Debian 8.5

Antwort1

Schreiben Sie einfach nichts in die Datei:

:> "$filenameTarget"

Dadurch wird die Datei geleert, wenn sie bereits existiert, und wenn nicht, wird sie (leer) erstellt. Sie müssen über die entsprechenden Berechtigungen verfügen (die Datei muss beschreibbar sein, wenn sie bereits existiert, das enthaltene Verzeichnis muss beschreibbar sein, wenn die Datei noch nicht existiert).

verwandte Informationen