Vyprázdniť obsah zadaného súboru bez odstránenia cez príkazový riadok

Anonim

Ak pracujete na príkazovom riadku a potrebujete rýchlo vyprázdniť obsah súboru, môžete to urobiť tak, že pred príslušný názov súboru hodíte znak väčší ako a medzeru.

Ako vymazať obsah súboru z príkazového riadku

Trik na odstránenie obsahu súboru pri zachovaní tohto súboru vyzerá takto:

> názov súboru

Tento prístup funguje v bash a mnohých iných shelloch, ale môžete použiť aj variáciu echo, ak nefunguje v zsh alebo inom shelle. Pre zsh použite na vymazanie obsahu súboru z príkazového riadka pomocou echo null a presmerovania nasledovné:

echo -n > názov súboru

Všetok obsah v cieľovom súbore bude okamžite odstránený bez varovania a ponechá sa prázdny, pričom sa zachová existencia súborov, názov súboru a povolenia. Toto je často vhodnejšie a rýchlejšie ako manuálne odstraňovanie a opätovné vytváranie súboru.

Dobrým praktickým príkladom je vymazanie obsahu súborov denníka, napríklad:

> ~/Library/Logs/updates.log

Alebo dosiahnutie rovnakého efektu s presmerovaním ozveny:

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

Tento príkaz môžete použiť aj na vytvorenie nového 0-bajtového súboru na mieste, podobne ako pri použití dotykového príkazu.

Toto bude obzvlášť užitočné, ak chcete zachovať rovnaké povolenia daného súboru, ale chcete prepísať obsah, čo je bežný jav pri súboroch denníka a podobných položkách.

Vyprázdniť obsah zadaného súboru bez odstránenia cez príkazový riadok