新聞中心
在Linux系統(tǒng)中,有時(shí)候我們需要把一個(gè)文件內(nèi)容清空,或者刪除文件但保留文件名等元數(shù)據(jù)信息,這時(shí)候我們可以使用將文件寫成null的方法。

創(chuàng)新互聯(lián)公司主要為客戶提供服務(wù)項(xiàng)目涵蓋了網(wǎng)頁視覺設(shè)計(jì)、VI標(biāo)志設(shè)計(jì)、全網(wǎng)營銷推廣、網(wǎng)站程序開發(fā)、HTML5響應(yīng)式成都網(wǎng)站建設(shè)、手機(jī)網(wǎng)站制作、微商城、網(wǎng)站托管及成都網(wǎng)站維護(hù)、WEB系統(tǒng)開發(fā)、域名注冊(cè)、國內(nèi)外服務(wù)器租用、視頻、平面設(shè)計(jì)、SEO優(yōu)化排名。設(shè)計(jì)、前端、后端三個(gè)建站步驟的完善服務(wù)體系。一人跟蹤測(cè)試的建站服務(wù)標(biāo)準(zhǔn)。已經(jīng)為成都廣告制作行業(yè)客戶提供了網(wǎng)站推廣服務(wù)。
何為“文件寫成null”呢?簡單來說就是將文件中的所有數(shù)據(jù)都清空,讓其大小為0。不過這里要注意的是,這并不是簡單地刪除文件內(nèi)容,而是真正地將該文件的硬盤空間釋放出來,即能夠在磁盤空間上得到優(yōu)化。
那么,如何將文件寫成null呢?以下是兩種方法:
方法一:使用shell命令
在終端中使用“>”符號(hào),將文本輸出到文件中。在Linux系統(tǒng)中,“>”符號(hào)被稱為重定向符號(hào),它的作用是將前面的命令輸出到后面指定的文件中,如果該文件不存在,則新建該文件;如果該文件已存在,則將文件內(nèi)容清空。
使用如下命令可以將文件寫成null:
$ > filename
其中,“filename”表示要清空的文件名。執(zhí)行上述命令后,該文件的所有內(nèi)容會(huì)被清空,但該文件本身還是保留的,只是大小變成了0。
方法二:使用dd命令
dd是Linux系統(tǒng)自帶的命令,可以用來轉(zhuǎn)換和復(fù)制文件??梢酝ㄟ^以下命令將文件寫成null:
$ dd if=/dev/null of=filename
其中,“filename”表示要清空的文件名。該命令的原理是將“/dev/null”中的數(shù)據(jù)寫入指定的文件中,由于“/dev/null”中沒有任何東西,因此會(huì)將目標(biāo)文件清空。
以上兩種方法都可以將文件寫成null,具體選擇哪種方法,可以看自己個(gè)人喜好。不過不管采用哪種方法,都要注意以下問題:
1. 不可逆。一旦將文件清空,再次找回原來的數(shù)據(jù)是不可能的,因?yàn)橐呀?jīng)釋放了磁盤空間。
2. 只適用于有讀寫權(quán)限的文件。如果嘗試對(duì)沒有寫權(quán)限的文件使用以上方法,將會(huì)報(bào)錯(cuò)。
3. 可能造成數(shù)據(jù)丟失。在將文件寫成null之前,一定要確定該文件是否真的不需要了,否則就會(huì)造成數(shù)據(jù)丟失的風(fēng)險(xiǎn)。
建議使用以上方法時(shí),一定要謹(jǐn)慎操作,以免不小心造成數(shù)據(jù)丟失和誤操作。
相關(guān)問題拓展閱讀:
- 什么是linux的標(biāo)準(zhǔn)錯(cuò)誤輸出
什么是linux的標(biāo)準(zhǔn)錯(cuò)誤輸出
Linux Shell 環(huán)境中支持輸入輸出重定向,用符號(hào)””來表示。0、1和2分別表轎絕示標(biāo)準(zhǔn)輸入、標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤信息輸出,可以用來指定需要重定向的標(biāo)準(zhǔn)輸入或輸出,比如 2>a.txt 表示將錯(cuò)誤信息輸出到文件a.txt中。
同時(shí),還可以在這三個(gè)標(biāo)準(zhǔn)輸入輸出之間實(shí)現(xiàn)重定向,比如將錯(cuò)誤信息重定向到標(biāo)準(zhǔn)輸出,可以用 2>&1來實(shí)現(xiàn)。
Linux下還有一個(gè)非凡的文件/dev/null,它就像一個(gè)無底洞,所有重定向到它的信息都會(huì)消失得無影無蹤。這一點(diǎn)非常有用,當(dāng)我們不需要回顯程序的所有信息時(shí),就可以將輸出重慎旅定向到/dev/null。
假如想要正常輸出和錯(cuò)誤信息都不顯示,則要把標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤都重定向到/dev/null, 例如:
# ls 1>/dev/null 2>/dev/null
還有一種做法是將錯(cuò)誤重定向到標(biāo)準(zhǔn)輸出,然后再重定向到 /dev/null,例如:
# ls >/dev/null 2>&1
注重:此處的順序不能更改,否則達(dá)不到想要的效果,此時(shí)先將標(biāo)準(zhǔn)輸出重定向到 /dev/null,然后將標(biāo)準(zhǔn)錯(cuò)誤重定向到標(biāo)準(zhǔn)輸出,由于標(biāo)準(zhǔn)輸出已經(jīng)重定向到了/dev/null,因此標(biāo)準(zhǔn)錯(cuò)誤也會(huì)重定向到/dev/null,于是一切靜靜靜:-)
另外 :
make >& make_log
意思是把標(biāo)準(zhǔn)輸出和錯(cuò)誤輸出都重定向, make>out 只重定向標(biāo)準(zhǔn)輸出!!!!!
>log 表示把標(biāo)準(zhǔn)輸出重新定向到文件log中
>& log 表示把標(biāo)準(zhǔn)輸出和錯(cuò)誤輸出都定向到文件log中,相當(dāng)于 >log 2>&1
錯(cuò)誤輸出應(yīng)該被寫至標(biāo)準(zhǔn)錯(cuò)誤(stderr),缺省情況下標(biāo)準(zhǔn)錯(cuò)誤同樣也是終端(也就是用戶的屏幕)
如果已將標(biāo)準(zhǔn)輸出重定向至某一位置,也可以將標(biāo)準(zhǔn)錯(cuò)誤重定向至同一位置。例如:
$ command 2>&1
在這個(gè)例子中,符號(hào)“2>&1”表示“將標(biāo)準(zhǔn)錯(cuò)誤發(fā)送至標(biāo)準(zhǔn)輸出被重定向的任何位置”,因此錯(cuò)誤和正常的消息都將在屏幕上顯示。當(dāng) 然,這是多余的,因?yàn)橄旅婧唵蔚恼{(diào)用
$ command
將做同樣的事。在標(biāo)準(zhǔn)輸出已被重定向至其它源,而您希望在同一命令行上將標(biāo)準(zhǔn)錯(cuò)誤寬帆凳也寫至同一目的地時(shí),該特性就非常有用。例如:
$ command >output_file 2>&1
在這個(gè)例子中,已首先將標(biāo)準(zhǔn)輸出重定向至 output_file;因此“2>&1”將使標(biāo)準(zhǔn)錯(cuò)誤也被重定向至 output_file。
linux將文件寫成null的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于linux將文件寫成null,Linux:將文件寫成null的方法,什么是linux的標(biāo)準(zhǔn)錯(cuò)誤輸出的信息別忘了在本站進(jìn)行查找喔。
成都網(wǎng)站營銷推廣找創(chuàng)新互聯(lián),全國分站站群網(wǎng)站搭建更好做SEO營銷。
創(chuàng)新互聯(lián)(www.cdcxhl.com)四川成都IDC基礎(chǔ)服務(wù)商,價(jià)格厚道。提供成都服務(wù)器托管租用、綿陽服務(wù)器租用托管、重慶服務(wù)器托管租用、貴陽服務(wù)器機(jī)房服務(wù)器托管租用。
當(dāng)前標(biāo)題:Linux:將文件寫成null的方法 (linux將文件寫成null)
網(wǎng)頁地址:http://www.dlmjj.cn/article/ccddpcc.html


咨詢
建站咨詢
