Buida el contingut del fitxer especificat sense esborrar mitjançant la línia d'ordres

Anonim

Si esteu treballant a la línia d'ordres i necessiteu buidar ràpidament el contingut d'un fitxer, podeu fer-ho llançant un símbol més gran que i un espai davant del nom del fitxer en qüestió.

Com esborrar el contingut del fitxer des de la línia d'ordres

El truc per eliminar el contingut d'un fitxer mentre es conserva aquest fitxer és el següent:

> nom de fitxer

Aquest enfocament funciona en bash i en moltes altres intèrprets d'ordre, però també podeu utilitzar una variació d'eco si no funciona en zsh o en un altre intèrpret d'ordres. Per a zsh, utilitzeu el següent per esborrar el contingut d'un fitxer de la línia d'ordres mitjançant echo null i redirecció:

echo -n > nom de fitxer

Tot el contingut del fitxer de destinació s'eliminarà immediatament sense previ avís, deixant-lo en blanc mentre es conserva l'existència dels fitxers, el nom del fitxer i els permisos. Això sovint és preferible i més ràpid que suprimir i recrear un fitxer manualment.

Un bon exemple pràctic és per esborrar el contingut dels fitxers de registre, per exemple:

> ~/Library/Logs/updates.log

O aconseguir el mateix efecte amb la redirecció d'eco:

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

També podeu utilitzar aquesta ordre per crear un fitxer nou de 0 bytes a la ubicació, de manera similar a utilitzar l'ordre tàctil.

Tu serà especialment útil si vols mantenir els permisos d'un fitxer determinat però vols sobreescriure el contingut, una ocurrència habitual amb fitxers de registre i elements similars.

Buida el contingut del fitxer especificat sense esborrar mitjançant la línia d'ordres