spdsz avatar

shell清空檔案文件所有字符的多種方法

🕦 by spdsz

使用Shell清空檔

Linux 通過shell清空檔的多種方式,常用的方法,如下表

方法 描述
vi 等文字編輯器 打開檔,刪除內容后保存即可
cat /dev/null > filename 利用 /dev/null 這一特殊設備和重定向來清空檔
: > filename 或 > filename 清空 filename,如果檔不存在,則創建檔 “:”與“>”之間有無空格均可 “:”充當虛擬佔位符,不產生任何輸出
true > filename 類似 :> filename
truncate -s 0 filename truncate 用於調整檔大小,-s 0,設置檔大小為0位元組
rf -f filename && touch filename 通過刪除原檔,再創建同名檔的方式清空檔
(1)head -n0 file > file.bak 或 tail -n0 file > file.bak 或 touch file.bak (2)mv file.bak file 1. 建立空檔 2. 重新命名檔
sed -i ‘1,$d’ filename 使用 sed 清空檔
dd if=filename of=filename 使用dd工具,通過將輸入、輸出檔指定為被清空檔的方式,來清空檔
dd if=/dev/null of=filename 利用 dd 及 /dev/null 設備清空檔
dd if=/dev/zero of=filename bs=512 count=0 利用 /dev/zero 設備,將輸出檔指定為被清空檔,count 指定為 0 來清空檔
/bin/cp -f /dev/null filename 以防 cp 被作為 cp -i 的別名,使用其絕對路徑

通過以上方法,被清空檔的大小均為 0

通過 echo “” > filename 或 echo > filename 等也可清空檔,但檔大小為 1

Linux 中清空檔的方法還有很多,主觀推薦使用兩種方法 :> filename 這一方式。 其一是簡潔,其二是 是shell內建命令,不需要安裝額外的工具。 > filename 可運行,存在某些 shell 中可能無法正常運行。

💘 相关文章

写一条评论