有時(shí)我們?cè)谔幚鞮inux終端中的文件時(shí),可能要去清除文件的內(nèi)容,而無需使用任何Linux命令行編輯器打開它。怎么才能實(shí)現(xiàn)呢?下面通過幾種不同的方式教大家清空文件內(nèi)容。
使用shell重定向null(不存在的對(duì)象)清空或清空文件內(nèi)容的最簡(jiǎn)單方法,如下所示:
這里我們將使用一個(gè)符號(hào):是一個(gè)shell內(nèi)置命令,它本質(zhì)上等同于true命令,它可以用作無操作(無操作)。
另一種方法是將輸出:或true內(nèi)置命令重定向到文件,如下所示:
#:> access.logOR#true > access.log
在Linux中,該null設(shè)備基本上用于丟棄進(jìn)程的不需要的輸出流,或者作為輸入流的合適空文件。這通常通過重定向機(jī)制完成。
/dev/null設(shè)備文件是一個(gè)特殊文件,可以注銷(刪除)發(fā)送給它的任何輸入,或者它的輸出與空文件的輸出相同。
也可以通過/dev/null使用cat命令將輸出重定向到它(文件)作為輸入來清空文件的內(nèi)容。
接下來,使用cp命令來清空文件內(nèi)容
#cp /dev/null access.log
在以下命令中,if表示輸入文件并of引用輸出文件。
#dd if=dev/null of=access.log
使用帶有空字符串的echo命令,并將其重定向到文件,如下所示:
#echo “” > access.log或#echo > access.log
注意:空字符串與null不同。字符串已經(jīng)是一個(gè)對(duì)象,因?yàn)樗赡苁强盏?,而null只是意味著不存在對(duì)象。
截?cái)嗝钣兄谑湛s或文件的大小擴(kuò)大到規(guī)定的尺寸。
您可以使用-s指定文件大小的選項(xiàng)。要清空文件內(nèi)容,請(qǐng)使用大小為0(零),如下一個(gè)命令:
#truncate -s 0 access.log
上面主要介紹了怎么使用簡(jiǎn)單的命令行實(shí)用程序和shell重定向機(jī)制清除或清空文件內(nèi)容的多種方法。這些可能不是唯一可行的方法,大家用自己喜歡的方式去清空就可以了。
聯(lián)系客服