truncate相關命令
用法:truncate 選項... 檔案...
將檔案縮減或擴充套件至指定大小。
如果指定檔案不存在則建立。
如果指定檔案超出指定大小則超出的資料將丟失。
如果指定檔案小於指定大小則用0 補足。
長選項必須使用的引數對於短選項時也是必需使用的。
-c, --no-create 不建立檔案
-o, --io-blocks 將SIZE 視為IO 塊數而不使用位元組數
-r, --reference=檔案 使用此檔案的大小
-s, --size=大小 使用此大小
--help 顯示此幫助資訊並退出
--version 顯示版本資訊並退出
SIZE 可以是一個可選的整數,後面跟著以下單位中的一個:
KB 1000,K 1024,MB 1000*1000,M 1024*1024,還有 G、T、P、E、Z、Y。
指定大小也可使用以下字首修飾:
"+" 增加,"-" 減少,"<" 至多,">" 至少,
"/" 小於等於原尺寸數字的指定數字的最小倍數,"%" 大於等於原尺寸數字的指定數字的最大倍數。
譯者注:當輸入值為m,參考值為n 時,
"/" 運算的數學計算式為 m / n * n;
"%" 運算的數學計算式為( m + n - 1 ) / n * n
請注意-r 和-s 是互斥的選項。
Linux檔案清空方法總結
1、使用重定向的方法
[root@centos7 ~]# du -h test.txt
4.0K test.txt
[root@centos7 ~]# > test.txt
[root@centos7 ~]# du -h test.txt
0 test.txt
2、使用true命令重定向清空檔案
[root@centos7 ~]# du -h test.txt
4.0K test.txt
[root@centos7 ~]# true > test.txt
[root@centos7 ~]# du -h test.txt
0 test.txt
3、使用cat/cp/dd命令及/dev/null裝置來清空檔案
[root@centos7 ~]# du -h test.txt
4.0K test.txt
[root@centos7 ~]# cat /dev/null > test.txt
[root@centos7 ~]# du -h test.txt
test.txt
###################################################
[root@centos7 ~]# echo "Hello World" > test.txt
[root@centos7 ~]# du -h test.txt
4.0K test.txt
[root@centos7 ~]# cp /dev/null test.txt
cp:是否覆蓋"test.txt"? y
[root@centos7 ~]# du -h test.txt
test.txt
##################################################
[root@centos7 ~]# echo "Hello World" > test.txt
[root@centos7 ~]# du -h test.txt
4.0K test.txt
[root@centos7 ~]# dd if=/dev/null of=test.txt
記錄了0+0 的讀入
記錄了0+0 的寫出
0位元組(0 B)已複製,0.000266781 秒,0.0 kB/秒
[root@centos7 ~]# du -h test.txt
test.txt
4、使用echo命令清空檔案
[root@centos7 ~]# echo "Hello World" > test.txt
[root@centos7 ~]# du -h test.txt
4.0K test.txt
[root@centos7 ~]# echo -n "" > test.txt ==>要加上"-n"引數,預設情況下會"\n",也就是回車符
[root@centos7 ~]# du -h test.txt
0 test.txt
5、使用truncate命令清空檔案
[root@centos7 ~]# du -h test.txt
4.0K test.txt
[root@centos7 ~]# truncate -s 0 test.txt -s引數用來設定檔案的大小,清空檔案,就設定為0;
[root@centos7 ~]# du -h test.txt
0 test.txt