Goliți conținutul fișierului specificat fără ștergere prin linia de comandă

Anonim

Dacă lucrați la linia de comandă și trebuie să goliți rapid conținutul unui fișier, puteți face acest lucru aruncând un simbol mai mare decât și un spațiu în fața numelui fișierului în cauză.

Cum să ștergeți conținutul fișierului din linia de comandă

Trucul de a elimina conținutul unui fișier în timp ce păstrați acel fișier arată astfel:

> nume de fișier

Aceasta abordare funcționează în bash și în multe alte shell-uri, dar puteți folosi și o variantă de echo dacă nu funcționează în zsh sau în alt shell. Pentru zsh, utilizați următoarele pentru a șterge conținutul unui fișier din linia de comandă folosind echo null și redirecționare:

echo -n > nume de fișier

Tot conținutul din fișierul țintă va fi imediat eliminat fără avertisment, lăsându-l necompletat, păstrând în același timp existența fișierelor, numele fișierului și permisiunile. Acest lucru este adesea de preferat și mai rapid decât ștergerea și recrearea manuală a unui fișier.

Un bun exemplu practic este pentru ștergerea conținutului fișierelor jurnal, de exemplu:

> ~/Library/Logs/updates.log

Sau obținerea aceluiași efect cu redirecționarea ecou:

echo -n > ~/Library/Logs/updates.log

De asemenea, puteți utiliza această comandă pentru a crea un nou fișier de 0 octeți la locație, similar cu utilizarea comenzii tactile.

Veți găsi că acest lucru este deosebit de util dacă doriți să păstrați aceleași permisiuni pentru un anumit fișier, dar doriți să suprascrieți conținutul, o apariție obișnuită cu fișierele jurnal și articole similare.

Goliți conținutul fișierului specificat fără ștergere prin linia de comandă